{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "##import libraries\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0, 0.5, 'Y dataset')"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "X = 6 * np.random.rand(100, 1) - 3\n",
    "y =0.5 * X**2 + 1.5*X + 2 + np.random.randn(100, 1)\n",
    "# quadratic equation used- y=0.5x^2+1.5x+2+outliers\n",
    "plt.scatter(X,y,color='g')\n",
    "plt.xlabel('X dataset')\n",
    "plt.ylabel('Y dataset')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.model_selection import train_test_split\n",
    "X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.2,random_state=42)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "## Lets implement Simple Linear Regression\n",
    "from sklearn.linear_model import LinearRegression\n",
    "regression_1=LinearRegression()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "LinearRegression()"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "regression_1.fit(X_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.6258604495084354\n"
     ]
    }
   ],
   "source": [
    "from sklearn.metrics import r2_score\n",
    "score=r2_score(y_test,regression_1.predict(X_test))\n",
    "print(score)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0, 0.5, 'Y')"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "## Lets visualize this model\n",
    "plt.plot(X_train,regression_1.predict(X_train),color='r')\n",
    "plt.scatter(X_train,y_train)\n",
    "plt.xlabel(\"X Dataset\")\n",
    "plt.ylabel(\"Y\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "#LEts apply polynomial transformation\n",
    "from sklearn.preprocessing import PolynomialFeatures"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "poly=PolynomialFeatures(degree=2,include_bias=True)\n",
    "X_train_poly=poly.fit_transform(X_train)\n",
    "X_test_poly=poly.transform(X_test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[ 1.00000000e+00, -2.74888188e+00,  7.55635156e+00],\n",
       "       [ 1.00000000e+00,  1.43055517e+00,  2.04648809e+00],\n",
       "       [ 1.00000000e+00,  5.90335028e-01,  3.48495446e-01],\n",
       "       [ 1.00000000e+00,  8.12149214e-01,  6.59586345e-01],\n",
       "       [ 1.00000000e+00,  3.66109686e-01,  1.34036303e-01],\n",
       "       [ 1.00000000e+00,  1.16597431e+00,  1.35949609e+00],\n",
       "       [ 1.00000000e+00, -3.31206334e-01,  1.09697636e-01],\n",
       "       [ 1.00000000e+00, -2.72438731e+00,  7.42228621e+00],\n",
       "       [ 1.00000000e+00, -1.75407407e+00,  3.07677584e+00],\n",
       "       [ 1.00000000e+00, -2.33894500e+00,  5.47066371e+00],\n",
       "       [ 1.00000000e+00,  2.90177215e+00,  8.42028158e+00],\n",
       "       [ 1.00000000e+00, -6.90515463e-01,  4.76811605e-01],\n",
       "       [ 1.00000000e+00, -1.16779767e+00,  1.36375141e+00],\n",
       "       [ 1.00000000e+00, -9.74366994e-01,  9.49391039e-01],\n",
       "       [ 1.00000000e+00, -1.84913689e+00,  3.41930725e+00],\n",
       "       [ 1.00000000e+00, -2.22897028e+00,  4.96830852e+00],\n",
       "       [ 1.00000000e+00,  2.90475311e+00,  8.43759060e+00],\n",
       "       [ 1.00000000e+00,  2.76540282e+00,  7.64745273e+00],\n",
       "       [ 1.00000000e+00,  1.81653747e-01,  3.29980837e-02],\n",
       "       [ 1.00000000e+00,  2.98247392e+00,  8.89515071e+00],\n",
       "       [ 1.00000000e+00,  6.20439630e-02,  3.84945335e-03],\n",
       "       [ 1.00000000e+00,  2.72378506e+00,  7.41900504e+00],\n",
       "       [ 1.00000000e+00,  1.57689605e+00,  2.48660115e+00],\n",
       "       [ 1.00000000e+00,  2.38227522e+00,  5.67523522e+00],\n",
       "       [ 1.00000000e+00, -1.31982776e+00,  1.74194531e+00],\n",
       "       [ 1.00000000e+00,  2.14015731e+00,  4.58027331e+00],\n",
       "       [ 1.00000000e+00,  4.04438649e-01,  1.63570621e-01],\n",
       "       [ 1.00000000e+00,  6.41599445e-01,  4.11649847e-01],\n",
       "       [ 1.00000000e+00, -1.54898329e+00,  2.39934922e+00],\n",
       "       [ 1.00000000e+00, -1.34560552e+00,  1.81065422e+00],\n",
       "       [ 1.00000000e+00,  2.88459805e+00,  8.32090592e+00],\n",
       "       [ 1.00000000e+00, -1.53502308e+00,  2.35629585e+00],\n",
       "       [ 1.00000000e+00, -2.74044436e+00,  7.51003530e+00],\n",
       "       [ 1.00000000e+00, -2.37748636e+00,  5.65244141e+00],\n",
       "       [ 1.00000000e+00,  1.48646577e+00,  2.20958049e+00],\n",
       "       [ 1.00000000e+00, -1.71238020e+00,  2.93224597e+00],\n",
       "       [ 1.00000000e+00,  2.03548332e+00,  4.14319233e+00],\n",
       "       [ 1.00000000e+00, -1.17633641e+00,  1.38376736e+00],\n",
       "       [ 1.00000000e+00, -2.17206826e+00,  4.71788052e+00],\n",
       "       [ 1.00000000e+00,  2.29770897e+00,  5.27946650e+00],\n",
       "       [ 1.00000000e+00, -3.28405762e-01,  1.07850344e-01],\n",
       "       [ 1.00000000e+00,  9.48361078e-01,  8.99388734e-01],\n",
       "       [ 1.00000000e+00,  6.53633998e-02,  4.27237404e-03],\n",
       "       [ 1.00000000e+00, -8.42291468e-01,  7.09454917e-01],\n",
       "       [ 1.00000000e+00,  1.32384602e+00,  1.75256828e+00],\n",
       "       [ 1.00000000e+00,  2.79692305e+00,  7.82277856e+00],\n",
       "       [ 1.00000000e+00, -2.98722587e+00,  8.92351841e+00],\n",
       "       [ 1.00000000e+00,  5.88811141e-01,  3.46698559e-01],\n",
       "       [ 1.00000000e+00, -1.45924666e+00,  2.12940082e+00],\n",
       "       [ 1.00000000e+00,  1.57421615e+00,  2.47815648e+00],\n",
       "       [ 1.00000000e+00, -2.18117707e+00,  4.75753342e+00],\n",
       "       [ 1.00000000e+00,  1.05998407e+00,  1.12356623e+00],\n",
       "       [ 1.00000000e+00, -6.51568696e-01,  4.24541765e-01],\n",
       "       [ 1.00000000e+00,  1.67352100e-01,  2.80067254e-02],\n",
       "       [ 1.00000000e+00,  2.66287718e+00,  7.09091488e+00],\n",
       "       [ 1.00000000e+00, -2.02883126e+00,  4.11615630e+00],\n",
       "       [ 1.00000000e+00, -1.51118982e+00,  2.28369468e+00],\n",
       "       [ 1.00000000e+00, -1.84252834e+00,  3.39491068e+00],\n",
       "       [ 1.00000000e+00, -1.07136262e+00,  1.14781785e+00],\n",
       "       [ 1.00000000e+00,  9.97213919e-01,  9.94435599e-01],\n",
       "       [ 1.00000000e+00,  1.51736778e+00,  2.30240497e+00],\n",
       "       [ 1.00000000e+00,  2.39182148e+00,  5.72081002e+00],\n",
       "       [ 1.00000000e+00, -1.86558636e+00,  3.48041246e+00],\n",
       "       [ 1.00000000e+00, -4.57496373e-01,  2.09302931e-01],\n",
       "       [ 1.00000000e+00, -1.68216491e-01,  2.82967880e-02],\n",
       "       [ 1.00000000e+00, -1.18273184e-01,  1.39885461e-02],\n",
       "       [ 1.00000000e+00,  2.98594938e+00,  8.91589371e+00],\n",
       "       [ 1.00000000e+00, -5.55373741e-01,  3.08439992e-01],\n",
       "       [ 1.00000000e+00, -6.37420188e-02,  4.06304496e-03],\n",
       "       [ 1.00000000e+00, -2.82811213e+00,  7.99821821e+00],\n",
       "       [ 1.00000000e+00, -1.20194221e+00,  1.44466507e+00],\n",
       "       [ 1.00000000e+00, -2.93675059e+00,  8.62450403e+00],\n",
       "       [ 1.00000000e+00, -2.42876800e+00,  5.89891398e+00],\n",
       "       [ 1.00000000e+00,  6.02873835e-01,  3.63456861e-01],\n",
       "       [ 1.00000000e+00, -1.89233256e+00,  3.58092252e+00],\n",
       "       [ 1.00000000e+00,  1.74384467e+00,  3.04099423e+00],\n",
       "       [ 1.00000000e+00, -1.59039281e-01,  2.52934931e-02],\n",
       "       [ 1.00000000e+00,  3.17628577e-02,  1.00887913e-03],\n",
       "       [ 1.00000000e+00, -1.13953099e+00,  1.29853087e+00],\n",
       "       [ 1.00000000e+00,  2.62214178e+00,  6.87562751e+00]])"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X_train_poly"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[ 1.00000000e+00, -1.67504154e+00,  2.80576417e+00],\n",
       "       [ 1.00000000e+00,  2.04814890e+00,  4.19491392e+00],\n",
       "       [ 1.00000000e+00, -7.77663328e-01,  6.04760251e-01],\n",
       "       [ 1.00000000e+00, -2.82542840e+00,  7.98304562e+00],\n",
       "       [ 1.00000000e+00,  1.95122921e+00,  3.80729543e+00],\n",
       "       [ 1.00000000e+00, -1.63621585e+00,  2.67720230e+00],\n",
       "       [ 1.00000000e+00, -8.15172988e-01,  6.64507000e-01],\n",
       "       [ 1.00000000e+00,  6.74398175e-01,  4.54812899e-01],\n",
       "       [ 1.00000000e+00, -2.63726054e+00,  6.95514315e+00],\n",
       "       [ 1.00000000e+00, -1.86307438e-01,  3.47104614e-02],\n",
       "       [ 1.00000000e+00, -2.62472160e+00,  6.88916348e+00],\n",
       "       [ 1.00000000e+00, -2.93340573e+00,  8.60486920e+00],\n",
       "       [ 1.00000000e+00, -1.55858596e+00,  2.42919020e+00],\n",
       "       [ 1.00000000e+00,  2.72476472e+00,  7.42434278e+00],\n",
       "       [ 1.00000000e+00,  1.69168227e-01,  2.86178890e-02],\n",
       "       [ 1.00000000e+00,  4.44943540e-02,  1.97974754e-03],\n",
       "       [ 1.00000000e+00,  1.81130598e+00,  3.28082936e+00],\n",
       "       [ 1.00000000e+00,  1.34073538e+00,  1.79757135e+00],\n",
       "       [ 1.00000000e+00, -2.15652733e+00,  4.65061014e+00],\n",
       "       [ 1.00000000e+00,  1.07671762e+00,  1.15932084e+00]])"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X_test_poly"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.9393239901567215\n"
     ]
    }
   ],
   "source": [
    "\n",
    "from sklearn.metrics import r2_score\n",
    "regression = LinearRegression()\n",
    "regression.fit(X_train_poly, y_train)\n",
    "y_pred = regression.predict(X_test_poly)\n",
    "score=r2_score(y_test,y_pred)\n",
    "print(score)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[0.         1.5819644  0.50905021]]\n"
     ]
    }
   ],
   "source": [
    "print(regression.coef_)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[1.84676477]\n"
     ]
    }
   ],
   "source": [
    "print(regression.intercept_)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x2504c06b610>"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(X_train,regression.predict(X_train_poly))\n",
    "plt.scatter(X_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [],
   "source": [
    "poly=PolynomialFeatures(degree=3,include_bias=True)\n",
    "X_train_poly=poly.fit_transform(X_train)\n",
    "X_test_poly=poly.transform(X_test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[ 1.00000000e+00, -2.74888188e+00,  7.55635156e+00,\n",
       "        -2.07715179e+01],\n",
       "       [ 1.00000000e+00,  1.43055517e+00,  2.04648809e+00,\n",
       "         2.92761412e+00],\n",
       "       [ 1.00000000e+00,  5.90335028e-01,  3.48495446e-01,\n",
       "         2.05729069e-01],\n",
       "       [ 1.00000000e+00,  8.12149214e-01,  6.59586345e-01,\n",
       "         5.35682531e-01],\n",
       "       [ 1.00000000e+00,  3.66109686e-01,  1.34036303e-01,\n",
       "         4.90719887e-02],\n",
       "       [ 1.00000000e+00,  1.16597431e+00,  1.35949609e+00,\n",
       "         1.58513752e+00],\n",
       "       [ 1.00000000e+00, -3.31206334e-01,  1.09697636e-01,\n",
       "        -3.63325517e-02],\n",
       "       [ 1.00000000e+00, -2.72438731e+00,  7.42228621e+00,\n",
       "        -2.02211824e+01],\n",
       "       [ 1.00000000e+00, -1.75407407e+00,  3.07677584e+00,\n",
       "        -5.39689271e+00],\n",
       "       [ 1.00000000e+00, -2.33894500e+00,  5.47066371e+00,\n",
       "        -1.27955815e+01],\n",
       "       [ 1.00000000e+00,  2.90177215e+00,  8.42028158e+00,\n",
       "         2.44337385e+01],\n",
       "       [ 1.00000000e+00, -6.90515463e-01,  4.76811605e-01,\n",
       "        -3.29245786e-01],\n",
       "       [ 1.00000000e+00, -1.16779767e+00,  1.36375141e+00,\n",
       "        -1.59258572e+00],\n",
       "       [ 1.00000000e+00, -9.74366994e-01,  9.49391039e-01,\n",
       "        -9.25055292e-01],\n",
       "       [ 1.00000000e+00, -1.84913689e+00,  3.41930725e+00,\n",
       "        -6.32276718e+00],\n",
       "       [ 1.00000000e+00, -2.22897028e+00,  4.96830852e+00,\n",
       "        -1.10742120e+01],\n",
       "       [ 1.00000000e+00,  2.90475311e+00,  8.43759060e+00,\n",
       "         2.45091175e+01],\n",
       "       [ 1.00000000e+00,  2.76540282e+00,  7.64745273e+00,\n",
       "         2.11482873e+01],\n",
       "       [ 1.00000000e+00,  1.81653747e-01,  3.29980837e-02,\n",
       "         5.99422555e-03],\n",
       "       [ 1.00000000e+00,  2.98247392e+00,  8.89515071e+00,\n",
       "         2.65295550e+01],\n",
       "       [ 1.00000000e+00,  6.20439630e-02,  3.84945335e-03,\n",
       "         2.38835341e-04],\n",
       "       [ 1.00000000e+00,  2.72378506e+00,  7.41900504e+00,\n",
       "         2.02077751e+01],\n",
       "       [ 1.00000000e+00,  1.57689605e+00,  2.48660115e+00,\n",
       "         3.92111154e+00],\n",
       "       [ 1.00000000e+00,  2.38227522e+00,  5.67523522e+00,\n",
       "         1.35199722e+01],\n",
       "       [ 1.00000000e+00, -1.31982776e+00,  1.74194531e+00,\n",
       "        -2.29906777e+00],\n",
       "       [ 1.00000000e+00,  2.14015731e+00,  4.58027331e+00,\n",
       "         9.80250542e+00],\n",
       "       [ 1.00000000e+00,  4.04438649e-01,  1.63570621e-01,\n",
       "         6.61542809e-02],\n",
       "       [ 1.00000000e+00,  6.41599445e-01,  4.11649847e-01,\n",
       "         2.64114313e-01],\n",
       "       [ 1.00000000e+00, -1.54898329e+00,  2.39934922e+00,\n",
       "        -3.71655183e+00],\n",
       "       [ 1.00000000e+00, -1.34560552e+00,  1.81065422e+00,\n",
       "        -2.43642632e+00],\n",
       "       [ 1.00000000e+00,  2.88459805e+00,  8.32090592e+00,\n",
       "         2.40024690e+01],\n",
       "       [ 1.00000000e+00, -1.53502308e+00,  2.35629585e+00,\n",
       "        -3.61696850e+00],\n",
       "       [ 1.00000000e+00, -2.74044436e+00,  7.51003530e+00,\n",
       "        -2.05808339e+01],\n",
       "       [ 1.00000000e+00, -2.37748636e+00,  5.65244141e+00,\n",
       "        -1.34386024e+01],\n",
       "       [ 1.00000000e+00,  1.48646577e+00,  2.20958049e+00,\n",
       "         3.28446577e+00],\n",
       "       [ 1.00000000e+00, -1.71238020e+00,  2.93224597e+00,\n",
       "        -5.02111995e+00],\n",
       "       [ 1.00000000e+00,  2.03548332e+00,  4.14319233e+00,\n",
       "         8.43339885e+00],\n",
       "       [ 1.00000000e+00, -1.17633641e+00,  1.38376736e+00,\n",
       "        -1.62777594e+00],\n",
       "       [ 1.00000000e+00, -2.17206826e+00,  4.71788052e+00,\n",
       "        -1.02475585e+01],\n",
       "       [ 1.00000000e+00,  2.29770897e+00,  5.27946650e+00,\n",
       "         1.21306775e+01],\n",
       "       [ 1.00000000e+00, -3.28405762e-01,  1.07850344e-01,\n",
       "        -3.54186744e-02],\n",
       "       [ 1.00000000e+00,  9.48361078e-01,  8.99388734e-01,\n",
       "         8.52945270e-01],\n",
       "       [ 1.00000000e+00,  6.53633998e-02,  4.27237404e-03,\n",
       "         2.79256892e-04],\n",
       "       [ 1.00000000e+00, -8.42291468e-01,  7.09454917e-01,\n",
       "        -5.97567824e-01],\n",
       "       [ 1.00000000e+00,  1.32384602e+00,  1.75256828e+00,\n",
       "         2.32013053e+00],\n",
       "       [ 1.00000000e+00,  2.79692305e+00,  7.82277856e+00,\n",
       "         2.18797097e+01],\n",
       "       [ 1.00000000e+00, -2.98722587e+00,  8.92351841e+00,\n",
       "        -2.66565651e+01],\n",
       "       [ 1.00000000e+00,  5.88811141e-01,  3.46698559e-01,\n",
       "         2.04139974e-01],\n",
       "       [ 1.00000000e+00, -1.45924666e+00,  2.12940082e+00,\n",
       "        -3.10732104e+00],\n",
       "       [ 1.00000000e+00,  1.57421615e+00,  2.47815648e+00,\n",
       "         3.90115395e+00],\n",
       "       [ 1.00000000e+00, -2.18117707e+00,  4.75753342e+00,\n",
       "        -1.03770228e+01],\n",
       "       [ 1.00000000e+00,  1.05998407e+00,  1.12356623e+00,\n",
       "         1.19096230e+00],\n",
       "       [ 1.00000000e+00, -6.51568696e-01,  4.24541765e-01,\n",
       "        -2.76618124e-01],\n",
       "       [ 1.00000000e+00,  1.67352100e-01,  2.80067254e-02,\n",
       "         4.68698432e-03],\n",
       "       [ 1.00000000e+00,  2.66287718e+00,  7.09091488e+00,\n",
       "         1.88822354e+01],\n",
       "       [ 1.00000000e+00, -2.02883126e+00,  4.11615630e+00,\n",
       "        -8.35098659e+00],\n",
       "       [ 1.00000000e+00, -1.51118982e+00,  2.28369468e+00,\n",
       "        -3.45109615e+00],\n",
       "       [ 1.00000000e+00, -1.84252834e+00,  3.39491068e+00,\n",
       "        -6.25521913e+00],\n",
       "       [ 1.00000000e+00, -1.07136262e+00,  1.14781785e+00,\n",
       "        -1.22972914e+00],\n",
       "       [ 1.00000000e+00,  9.97213919e-01,  9.94435599e-01,\n",
       "         9.91665021e-01],\n",
       "       [ 1.00000000e+00,  1.51736778e+00,  2.30240497e+00,\n",
       "         3.49359510e+00],\n",
       "       [ 1.00000000e+00,  2.39182148e+00,  5.72081002e+00,\n",
       "         1.36831563e+01],\n",
       "       [ 1.00000000e+00, -1.86558636e+00,  3.48041246e+00,\n",
       "        -6.49301000e+00],\n",
       "       [ 1.00000000e+00, -4.57496373e-01,  2.09302931e-01,\n",
       "        -9.57553318e-02],\n",
       "       [ 1.00000000e+00, -1.68216491e-01,  2.82967880e-02,\n",
       "        -4.75998639e-03],\n",
       "       [ 1.00000000e+00, -1.18273184e-01,  1.39885461e-02,\n",
       "        -1.65446989e-03],\n",
       "       [ 1.00000000e+00,  2.98594938e+00,  8.91589371e+00,\n",
       "         2.66224073e+01],\n",
       "       [ 1.00000000e+00, -5.55373741e-01,  3.08439992e-01,\n",
       "        -1.71299472e-01],\n",
       "       [ 1.00000000e+00, -6.37420188e-02,  4.06304496e-03,\n",
       "        -2.58986688e-04],\n",
       "       [ 1.00000000e+00, -2.82811213e+00,  7.99821821e+00,\n",
       "        -2.26198579e+01],\n",
       "       [ 1.00000000e+00, -1.20194221e+00,  1.44466507e+00,\n",
       "        -1.73640392e+00],\n",
       "       [ 1.00000000e+00, -2.93675059e+00,  8.62450403e+00,\n",
       "        -2.53280173e+01],\n",
       "       [ 1.00000000e+00, -2.42876800e+00,  5.89891398e+00,\n",
       "        -1.43270935e+01],\n",
       "       [ 1.00000000e+00,  6.02873835e-01,  3.63456861e-01,\n",
       "         2.19118631e-01],\n",
       "       [ 1.00000000e+00, -1.89233256e+00,  3.58092252e+00,\n",
       "        -6.77629629e+00],\n",
       "       [ 1.00000000e+00,  1.74384467e+00,  3.04099423e+00,\n",
       "         5.30302159e+00],\n",
       "       [ 1.00000000e+00, -1.59039281e-01,  2.52934931e-02,\n",
       "        -4.02265896e-03],\n",
       "       [ 1.00000000e+00,  3.17628577e-02,  1.00887913e-03,\n",
       "         3.20448841e-05],\n",
       "       [ 1.00000000e+00, -1.13953099e+00,  1.29853087e+00,\n",
       "        -1.47971616e+00],\n",
       "       [ 1.00000000e+00,  2.62214178e+00,  6.87562751e+00,\n",
       "         1.80288702e+01]])"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X_train_poly"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.9343611155722256\n"
     ]
    }
   ],
   "source": [
    "\n",
    "from sklearn.metrics import r2_score\n",
    "regression = LinearRegression()\n",
    "regression.fit(X_train_poly, y_train)\n",
    "y_pred = regression.predict(X_test_poly)\n",
    "score=r2_score(y_test,y_pred)\n",
    "print(score)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[ 1.00000000e+00, -3.00000000e+00,  9.00000000e+00,\n",
       "        -2.70000000e+01],\n",
       "       [ 1.00000000e+00, -2.96984925e+00,  8.82000455e+00,\n",
       "        -2.61940839e+01],\n",
       "       [ 1.00000000e+00, -2.93969849e+00,  8.64182723e+00,\n",
       "        -2.54043665e+01],\n",
       "       [ 1.00000000e+00, -2.90954774e+00,  8.46546804e+00,\n",
       "        -2.46306834e+01],\n",
       "       [ 1.00000000e+00, -2.87939698e+00,  8.29092700e+00,\n",
       "        -2.38728702e+01],\n",
       "       [ 1.00000000e+00, -2.84924623e+00,  8.11820409e+00,\n",
       "        -2.31307624e+01],\n",
       "       [ 1.00000000e+00, -2.81909548e+00,  7.94729931e+00,\n",
       "        -2.24041955e+01],\n",
       "       [ 1.00000000e+00, -2.78894472e+00,  7.77821267e+00,\n",
       "        -2.16930052e+01],\n",
       "       [ 1.00000000e+00, -2.75879397e+00,  7.61094417e+00,\n",
       "        -2.09970269e+01],\n",
       "       [ 1.00000000e+00, -2.72864322e+00,  7.44549380e+00,\n",
       "        -2.03160961e+01],\n",
       "       [ 1.00000000e+00, -2.69849246e+00,  7.28186157e+00,\n",
       "        -1.96500486e+01],\n",
       "       [ 1.00000000e+00, -2.66834171e+00,  7.12004747e+00,\n",
       "        -1.89987196e+01],\n",
       "       [ 1.00000000e+00, -2.63819095e+00,  6.96005151e+00,\n",
       "        -1.83619449e+01],\n",
       "       [ 1.00000000e+00, -2.60804020e+00,  6.80187369e+00,\n",
       "        -1.77395600e+01],\n",
       "       [ 1.00000000e+00, -2.57788945e+00,  6.64551400e+00,\n",
       "        -1.71314004e+01],\n",
       "       [ 1.00000000e+00, -2.54773869e+00,  6.49097245e+00,\n",
       "        -1.65373017e+01],\n",
       "       [ 1.00000000e+00, -2.51758794e+00,  6.33824903e+00,\n",
       "        -1.59570993e+01],\n",
       "       [ 1.00000000e+00, -2.48743719e+00,  6.18734375e+00,\n",
       "        -1.53906289e+01],\n",
       "       [ 1.00000000e+00, -2.45728643e+00,  6.03825661e+00,\n",
       "        -1.48377260e+01],\n",
       "       [ 1.00000000e+00, -2.42713568e+00,  5.89098760e+00,\n",
       "        -1.42982262e+01],\n",
       "       [ 1.00000000e+00, -2.39698492e+00,  5.74553673e+00,\n",
       "        -1.37719649e+01],\n",
       "       [ 1.00000000e+00, -2.36683417e+00,  5.60190399e+00,\n",
       "        -1.32587778e+01],\n",
       "       [ 1.00000000e+00, -2.33668342e+00,  5.46008939e+00,\n",
       "        -1.27585003e+01],\n",
       "       [ 1.00000000e+00, -2.30653266e+00,  5.32009293e+00,\n",
       "        -1.22709681e+01],\n",
       "       [ 1.00000000e+00, -2.27638191e+00,  5.18191460e+00,\n",
       "        -1.17960166e+01],\n",
       "       [ 1.00000000e+00, -2.24623116e+00,  5.04555441e+00,\n",
       "        -1.13334815e+01],\n",
       "       [ 1.00000000e+00, -2.21608040e+00,  4.91101235e+00,\n",
       "        -1.08831982e+01],\n",
       "       [ 1.00000000e+00, -2.18592965e+00,  4.77828843e+00,\n",
       "        -1.04450023e+01],\n",
       "       [ 1.00000000e+00, -2.15577889e+00,  4.64738264e+00,\n",
       "        -1.00187294e+01],\n",
       "       [ 1.00000000e+00, -2.12562814e+00,  4.51829499e+00,\n",
       "        -9.60421498e+00],\n",
       "       [ 1.00000000e+00, -2.09547739e+00,  4.39102548e+00,\n",
       "        -9.20129460e+00],\n",
       "       [ 1.00000000e+00, -2.06532663e+00,  4.26557410e+00,\n",
       "        -8.80980380e+00],\n",
       "       [ 1.00000000e+00, -2.03517588e+00,  4.14194086e+00,\n",
       "        -8.42957813e+00],\n",
       "       [ 1.00000000e+00, -2.00502513e+00,  4.02012575e+00,\n",
       "        -8.06045315e+00],\n",
       "       [ 1.00000000e+00, -1.97487437e+00,  3.90012878e+00,\n",
       "        -7.70226438e+00],\n",
       "       [ 1.00000000e+00, -1.94472362e+00,  3.78194995e+00,\n",
       "        -7.35484739e+00],\n",
       "       [ 1.00000000e+00, -1.91457286e+00,  3.66558925e+00,\n",
       "        -7.01803772e+00],\n",
       "       [ 1.00000000e+00, -1.88442211e+00,  3.55104669e+00,\n",
       "        -6.69167090e+00],\n",
       "       [ 1.00000000e+00, -1.85427136e+00,  3.43832226e+00,\n",
       "        -6.37558249e+00],\n",
       "       [ 1.00000000e+00, -1.82412060e+00,  3.32741597e+00,\n",
       "        -6.06960803e+00],\n",
       "       [ 1.00000000e+00, -1.79396985e+00,  3.21832782e+00,\n",
       "        -5.77358307e+00],\n",
       "       [ 1.00000000e+00, -1.76381910e+00,  3.11105780e+00,\n",
       "        -5.48734316e+00],\n",
       "       [ 1.00000000e+00, -1.73366834e+00,  3.00560592e+00,\n",
       "        -5.21072383e+00],\n",
       "       [ 1.00000000e+00, -1.70351759e+00,  2.90197217e+00,\n",
       "        -4.94356064e+00],\n",
       "       [ 1.00000000e+00, -1.67336683e+00,  2.80015656e+00,\n",
       "        -4.68568912e+00],\n",
       "       [ 1.00000000e+00, -1.64321608e+00,  2.70015909e+00,\n",
       "        -4.43694483e+00],\n",
       "       [ 1.00000000e+00, -1.61306533e+00,  2.60197975e+00,\n",
       "        -4.19716331e+00],\n",
       "       [ 1.00000000e+00, -1.58291457e+00,  2.50561854e+00,\n",
       "        -3.96618011e+00],\n",
       "       [ 1.00000000e+00, -1.55276382e+00,  2.41107548e+00,\n",
       "        -3.74383077e+00],\n",
       "       [ 1.00000000e+00, -1.52261307e+00,  2.31835055e+00,\n",
       "        -3.52995083e+00],\n",
       "       [ 1.00000000e+00, -1.49246231e+00,  2.22744375e+00,\n",
       "        -3.32437585e+00],\n",
       "       [ 1.00000000e+00, -1.46231156e+00,  2.13835509e+00,\n",
       "        -3.12694137e+00],\n",
       "       [ 1.00000000e+00, -1.43216080e+00,  2.05108457e+00,\n",
       "        -2.93748292e+00],\n",
       "       [ 1.00000000e+00, -1.40201005e+00,  1.96563218e+00,\n",
       "        -2.75583607e+00],\n",
       "       [ 1.00000000e+00, -1.37185930e+00,  1.88199793e+00,\n",
       "        -2.58183636e+00],\n",
       "       [ 1.00000000e+00, -1.34170854e+00,  1.80018181e+00,\n",
       "        -2.41531932e+00],\n",
       "       [ 1.00000000e+00, -1.31155779e+00,  1.72018383e+00,\n",
       "        -2.25612051e+00],\n",
       "       [ 1.00000000e+00, -1.28140704e+00,  1.64200399e+00,\n",
       "        -2.10407546e+00],\n",
       "       [ 1.00000000e+00, -1.25125628e+00,  1.56564228e+00,\n",
       "        -1.95901974e+00],\n",
       "       [ 1.00000000e+00, -1.22110553e+00,  1.49109871e+00,\n",
       "        -1.82078888e+00],\n",
       "       [ 1.00000000e+00, -1.19095477e+00,  1.41837327e+00,\n",
       "        -1.68921842e+00],\n",
       "       [ 1.00000000e+00, -1.16080402e+00,  1.34746597e+00,\n",
       "        -1.56414392e+00],\n",
       "       [ 1.00000000e+00, -1.13065327e+00,  1.27837681e+00,\n",
       "        -1.44540091e+00],\n",
       "       [ 1.00000000e+00, -1.10050251e+00,  1.21110578e+00,\n",
       "        -1.33282495e+00],\n",
       "       [ 1.00000000e+00, -1.07035176e+00,  1.14565289e+00,\n",
       "        -1.22625158e+00],\n",
       "       [ 1.00000000e+00, -1.04020101e+00,  1.08201813e+00,\n",
       "        -1.12551635e+00],\n",
       "       [ 1.00000000e+00, -1.01005025e+00,  1.02020151e+00,\n",
       "        -1.03045479e+00],\n",
       "       [ 1.00000000e+00, -9.79899497e-01,  9.60203025e-01,\n",
       "        -9.40902462e-01],\n",
       "       [ 1.00000000e+00, -9.49748744e-01,  9.02022676e-01,\n",
       "        -8.56694904e-01],\n",
       "       [ 1.00000000e+00, -9.19597990e-01,  8.45660463e-01,\n",
       "        -7.77667662e-01],\n",
       "       [ 1.00000000e+00, -8.89447236e-01,  7.91116386e-01,\n",
       "        -7.03656283e-01],\n",
       "       [ 1.00000000e+00, -8.59296482e-01,  7.38390445e-01,\n",
       "        -6.34496312e-01],\n",
       "       [ 1.00000000e+00, -8.29145729e-01,  6.87482639e-01,\n",
       "        -5.70023294e-01],\n",
       "       [ 1.00000000e+00, -7.98994975e-01,  6.38392970e-01,\n",
       "        -5.10072775e-01],\n",
       "       [ 1.00000000e+00, -7.68844221e-01,  5.91121436e-01,\n",
       "        -4.54480300e-01],\n",
       "       [ 1.00000000e+00, -7.38693467e-01,  5.45668039e-01,\n",
       "        -4.03081416e-01],\n",
       "       [ 1.00000000e+00, -7.08542714e-01,  5.02032777e-01,\n",
       "        -3.55711666e-01],\n",
       "       [ 1.00000000e+00, -6.78391960e-01,  4.60215651e-01,\n",
       "        -3.12206597e-01],\n",
       "       [ 1.00000000e+00, -6.48241206e-01,  4.20216661e-01,\n",
       "        -2.72401755e-01],\n",
       "       [ 1.00000000e+00, -6.18090452e-01,  3.82035807e-01,\n",
       "        -2.36132685e-01],\n",
       "       [ 1.00000000e+00, -5.87939698e-01,  3.45673089e-01,\n",
       "        -2.03234932e-01],\n",
       "       [ 1.00000000e+00, -5.57788945e-01,  3.11128507e-01,\n",
       "        -1.73544042e-01],\n",
       "       [ 1.00000000e+00, -5.27638191e-01,  2.78402061e-01,\n",
       "        -1.46895560e-01],\n",
       "       [ 1.00000000e+00, -4.97487437e-01,  2.47493750e-01,\n",
       "        -1.23125031e-01],\n",
       "       [ 1.00000000e+00, -4.67336683e-01,  2.18403576e-01,\n",
       "        -1.02068003e-01],\n",
       "       [ 1.00000000e+00, -4.37185930e-01,  1.91131537e-01,\n",
       "        -8.35600187e-02],\n",
       "       [ 1.00000000e+00, -4.07035176e-01,  1.65677634e-01,\n",
       "        -6.74366251e-02],\n",
       "       [ 1.00000000e+00, -3.76884422e-01,  1.42041868e-01,\n",
       "        -5.35333672e-02],\n",
       "       [ 1.00000000e+00, -3.46733668e-01,  1.20224237e-01,\n",
       "        -4.16857906e-02],\n",
       "       [ 1.00000000e+00, -3.16582915e-01,  1.00224742e-01,\n",
       "        -3.17294409e-02],\n",
       "       [ 1.00000000e+00, -2.86432161e-01,  8.20433827e-02,\n",
       "        -2.34998634e-02],\n",
       "       [ 1.00000000e+00, -2.56281407e-01,  6.56801596e-02,\n",
       "        -1.68326037e-02],\n",
       "       [ 1.00000000e+00, -2.26130653e-01,  5.11350723e-02,\n",
       "        -1.15632073e-02],\n",
       "       [ 1.00000000e+00, -1.95979899e-01,  3.84081210e-02,\n",
       "        -7.52721969e-03],\n",
       "       [ 1.00000000e+00, -1.65829146e-01,  2.74993056e-02,\n",
       "        -4.56018635e-03],\n",
       "       [ 1.00000000e+00, -1.35678392e-01,  1.84086260e-02,\n",
       "        -2.49765278e-03],\n",
       "       [ 1.00000000e+00, -1.05527638e-01,  1.11360824e-02,\n",
       "        -1.17516448e-03],\n",
       "       [ 1.00000000e+00, -7.53768844e-02,  5.68167471e-03,\n",
       "        -4.28266938e-04],\n",
       "       [ 1.00000000e+00, -4.52261307e-02,  2.04540289e-03,\n",
       "        -9.25056585e-05],\n",
       "       [ 1.00000000e+00, -1.50753769e-02,  2.27266988e-04,\n",
       "        -3.42613550e-06],\n",
       "       [ 1.00000000e+00,  1.50753769e-02,  2.27266988e-04,\n",
       "         3.42613550e-06],\n",
       "       [ 1.00000000e+00,  4.52261307e-02,  2.04540289e-03,\n",
       "         9.25056585e-05],\n",
       "       [ 1.00000000e+00,  7.53768844e-02,  5.68167471e-03,\n",
       "         4.28266938e-04],\n",
       "       [ 1.00000000e+00,  1.05527638e-01,  1.11360824e-02,\n",
       "         1.17516448e-03],\n",
       "       [ 1.00000000e+00,  1.35678392e-01,  1.84086260e-02,\n",
       "         2.49765278e-03],\n",
       "       [ 1.00000000e+00,  1.65829146e-01,  2.74993056e-02,\n",
       "         4.56018635e-03],\n",
       "       [ 1.00000000e+00,  1.95979899e-01,  3.84081210e-02,\n",
       "         7.52721969e-03],\n",
       "       [ 1.00000000e+00,  2.26130653e-01,  5.11350723e-02,\n",
       "         1.15632073e-02],\n",
       "       [ 1.00000000e+00,  2.56281407e-01,  6.56801596e-02,\n",
       "         1.68326037e-02],\n",
       "       [ 1.00000000e+00,  2.86432161e-01,  8.20433827e-02,\n",
       "         2.34998634e-02],\n",
       "       [ 1.00000000e+00,  3.16582915e-01,  1.00224742e-01,\n",
       "         3.17294409e-02],\n",
       "       [ 1.00000000e+00,  3.46733668e-01,  1.20224237e-01,\n",
       "         4.16857906e-02],\n",
       "       [ 1.00000000e+00,  3.76884422e-01,  1.42041868e-01,\n",
       "         5.35333672e-02],\n",
       "       [ 1.00000000e+00,  4.07035176e-01,  1.65677634e-01,\n",
       "         6.74366251e-02],\n",
       "       [ 1.00000000e+00,  4.37185930e-01,  1.91131537e-01,\n",
       "         8.35600187e-02],\n",
       "       [ 1.00000000e+00,  4.67336683e-01,  2.18403576e-01,\n",
       "         1.02068003e-01],\n",
       "       [ 1.00000000e+00,  4.97487437e-01,  2.47493750e-01,\n",
       "         1.23125031e-01],\n",
       "       [ 1.00000000e+00,  5.27638191e-01,  2.78402061e-01,\n",
       "         1.46895560e-01],\n",
       "       [ 1.00000000e+00,  5.57788945e-01,  3.11128507e-01,\n",
       "         1.73544042e-01],\n",
       "       [ 1.00000000e+00,  5.87939698e-01,  3.45673089e-01,\n",
       "         2.03234932e-01],\n",
       "       [ 1.00000000e+00,  6.18090452e-01,  3.82035807e-01,\n",
       "         2.36132685e-01],\n",
       "       [ 1.00000000e+00,  6.48241206e-01,  4.20216661e-01,\n",
       "         2.72401755e-01],\n",
       "       [ 1.00000000e+00,  6.78391960e-01,  4.60215651e-01,\n",
       "         3.12206597e-01],\n",
       "       [ 1.00000000e+00,  7.08542714e-01,  5.02032777e-01,\n",
       "         3.55711666e-01],\n",
       "       [ 1.00000000e+00,  7.38693467e-01,  5.45668039e-01,\n",
       "         4.03081416e-01],\n",
       "       [ 1.00000000e+00,  7.68844221e-01,  5.91121436e-01,\n",
       "         4.54480300e-01],\n",
       "       [ 1.00000000e+00,  7.98994975e-01,  6.38392970e-01,\n",
       "         5.10072775e-01],\n",
       "       [ 1.00000000e+00,  8.29145729e-01,  6.87482639e-01,\n",
       "         5.70023294e-01],\n",
       "       [ 1.00000000e+00,  8.59296482e-01,  7.38390445e-01,\n",
       "         6.34496312e-01],\n",
       "       [ 1.00000000e+00,  8.89447236e-01,  7.91116386e-01,\n",
       "         7.03656283e-01],\n",
       "       [ 1.00000000e+00,  9.19597990e-01,  8.45660463e-01,\n",
       "         7.77667662e-01],\n",
       "       [ 1.00000000e+00,  9.49748744e-01,  9.02022676e-01,\n",
       "         8.56694904e-01],\n",
       "       [ 1.00000000e+00,  9.79899497e-01,  9.60203025e-01,\n",
       "         9.40902462e-01],\n",
       "       [ 1.00000000e+00,  1.01005025e+00,  1.02020151e+00,\n",
       "         1.03045479e+00],\n",
       "       [ 1.00000000e+00,  1.04020101e+00,  1.08201813e+00,\n",
       "         1.12551635e+00],\n",
       "       [ 1.00000000e+00,  1.07035176e+00,  1.14565289e+00,\n",
       "         1.22625158e+00],\n",
       "       [ 1.00000000e+00,  1.10050251e+00,  1.21110578e+00,\n",
       "         1.33282495e+00],\n",
       "       [ 1.00000000e+00,  1.13065327e+00,  1.27837681e+00,\n",
       "         1.44540091e+00],\n",
       "       [ 1.00000000e+00,  1.16080402e+00,  1.34746597e+00,\n",
       "         1.56414392e+00],\n",
       "       [ 1.00000000e+00,  1.19095477e+00,  1.41837327e+00,\n",
       "         1.68921842e+00],\n",
       "       [ 1.00000000e+00,  1.22110553e+00,  1.49109871e+00,\n",
       "         1.82078888e+00],\n",
       "       [ 1.00000000e+00,  1.25125628e+00,  1.56564228e+00,\n",
       "         1.95901974e+00],\n",
       "       [ 1.00000000e+00,  1.28140704e+00,  1.64200399e+00,\n",
       "         2.10407546e+00],\n",
       "       [ 1.00000000e+00,  1.31155779e+00,  1.72018383e+00,\n",
       "         2.25612051e+00],\n",
       "       [ 1.00000000e+00,  1.34170854e+00,  1.80018181e+00,\n",
       "         2.41531932e+00],\n",
       "       [ 1.00000000e+00,  1.37185930e+00,  1.88199793e+00,\n",
       "         2.58183636e+00],\n",
       "       [ 1.00000000e+00,  1.40201005e+00,  1.96563218e+00,\n",
       "         2.75583607e+00],\n",
       "       [ 1.00000000e+00,  1.43216080e+00,  2.05108457e+00,\n",
       "         2.93748292e+00],\n",
       "       [ 1.00000000e+00,  1.46231156e+00,  2.13835509e+00,\n",
       "         3.12694137e+00],\n",
       "       [ 1.00000000e+00,  1.49246231e+00,  2.22744375e+00,\n",
       "         3.32437585e+00],\n",
       "       [ 1.00000000e+00,  1.52261307e+00,  2.31835055e+00,\n",
       "         3.52995083e+00],\n",
       "       [ 1.00000000e+00,  1.55276382e+00,  2.41107548e+00,\n",
       "         3.74383077e+00],\n",
       "       [ 1.00000000e+00,  1.58291457e+00,  2.50561854e+00,\n",
       "         3.96618011e+00],\n",
       "       [ 1.00000000e+00,  1.61306533e+00,  2.60197975e+00,\n",
       "         4.19716331e+00],\n",
       "       [ 1.00000000e+00,  1.64321608e+00,  2.70015909e+00,\n",
       "         4.43694483e+00],\n",
       "       [ 1.00000000e+00,  1.67336683e+00,  2.80015656e+00,\n",
       "         4.68568912e+00],\n",
       "       [ 1.00000000e+00,  1.70351759e+00,  2.90197217e+00,\n",
       "         4.94356064e+00],\n",
       "       [ 1.00000000e+00,  1.73366834e+00,  3.00560592e+00,\n",
       "         5.21072383e+00],\n",
       "       [ 1.00000000e+00,  1.76381910e+00,  3.11105780e+00,\n",
       "         5.48734316e+00],\n",
       "       [ 1.00000000e+00,  1.79396985e+00,  3.21832782e+00,\n",
       "         5.77358307e+00],\n",
       "       [ 1.00000000e+00,  1.82412060e+00,  3.32741597e+00,\n",
       "         6.06960803e+00],\n",
       "       [ 1.00000000e+00,  1.85427136e+00,  3.43832226e+00,\n",
       "         6.37558249e+00],\n",
       "       [ 1.00000000e+00,  1.88442211e+00,  3.55104669e+00,\n",
       "         6.69167090e+00],\n",
       "       [ 1.00000000e+00,  1.91457286e+00,  3.66558925e+00,\n",
       "         7.01803772e+00],\n",
       "       [ 1.00000000e+00,  1.94472362e+00,  3.78194995e+00,\n",
       "         7.35484739e+00],\n",
       "       [ 1.00000000e+00,  1.97487437e+00,  3.90012878e+00,\n",
       "         7.70226438e+00],\n",
       "       [ 1.00000000e+00,  2.00502513e+00,  4.02012575e+00,\n",
       "         8.06045315e+00],\n",
       "       [ 1.00000000e+00,  2.03517588e+00,  4.14194086e+00,\n",
       "         8.42957813e+00],\n",
       "       [ 1.00000000e+00,  2.06532663e+00,  4.26557410e+00,\n",
       "         8.80980380e+00],\n",
       "       [ 1.00000000e+00,  2.09547739e+00,  4.39102548e+00,\n",
       "         9.20129460e+00],\n",
       "       [ 1.00000000e+00,  2.12562814e+00,  4.51829499e+00,\n",
       "         9.60421498e+00],\n",
       "       [ 1.00000000e+00,  2.15577889e+00,  4.64738264e+00,\n",
       "         1.00187294e+01],\n",
       "       [ 1.00000000e+00,  2.18592965e+00,  4.77828843e+00,\n",
       "         1.04450023e+01],\n",
       "       [ 1.00000000e+00,  2.21608040e+00,  4.91101235e+00,\n",
       "         1.08831982e+01],\n",
       "       [ 1.00000000e+00,  2.24623116e+00,  5.04555441e+00,\n",
       "         1.13334815e+01],\n",
       "       [ 1.00000000e+00,  2.27638191e+00,  5.18191460e+00,\n",
       "         1.17960166e+01],\n",
       "       [ 1.00000000e+00,  2.30653266e+00,  5.32009293e+00,\n",
       "         1.22709681e+01],\n",
       "       [ 1.00000000e+00,  2.33668342e+00,  5.46008939e+00,\n",
       "         1.27585003e+01],\n",
       "       [ 1.00000000e+00,  2.36683417e+00,  5.60190399e+00,\n",
       "         1.32587778e+01],\n",
       "       [ 1.00000000e+00,  2.39698492e+00,  5.74553673e+00,\n",
       "         1.37719649e+01],\n",
       "       [ 1.00000000e+00,  2.42713568e+00,  5.89098760e+00,\n",
       "         1.42982262e+01],\n",
       "       [ 1.00000000e+00,  2.45728643e+00,  6.03825661e+00,\n",
       "         1.48377260e+01],\n",
       "       [ 1.00000000e+00,  2.48743719e+00,  6.18734375e+00,\n",
       "         1.53906289e+01],\n",
       "       [ 1.00000000e+00,  2.51758794e+00,  6.33824903e+00,\n",
       "         1.59570993e+01],\n",
       "       [ 1.00000000e+00,  2.54773869e+00,  6.49097245e+00,\n",
       "         1.65373017e+01],\n",
       "       [ 1.00000000e+00,  2.57788945e+00,  6.64551400e+00,\n",
       "         1.71314004e+01],\n",
       "       [ 1.00000000e+00,  2.60804020e+00,  6.80187369e+00,\n",
       "         1.77395600e+01],\n",
       "       [ 1.00000000e+00,  2.63819095e+00,  6.96005151e+00,\n",
       "         1.83619449e+01],\n",
       "       [ 1.00000000e+00,  2.66834171e+00,  7.12004747e+00,\n",
       "         1.89987196e+01],\n",
       "       [ 1.00000000e+00,  2.69849246e+00,  7.28186157e+00,\n",
       "         1.96500486e+01],\n",
       "       [ 1.00000000e+00,  2.72864322e+00,  7.44549380e+00,\n",
       "         2.03160961e+01],\n",
       "       [ 1.00000000e+00,  2.75879397e+00,  7.61094417e+00,\n",
       "         2.09970269e+01],\n",
       "       [ 1.00000000e+00,  2.78894472e+00,  7.77821267e+00,\n",
       "         2.16930052e+01],\n",
       "       [ 1.00000000e+00,  2.81909548e+00,  7.94729931e+00,\n",
       "         2.24041955e+01],\n",
       "       [ 1.00000000e+00,  2.84924623e+00,  8.11820409e+00,\n",
       "         2.31307624e+01],\n",
       "       [ 1.00000000e+00,  2.87939698e+00,  8.29092700e+00,\n",
       "         2.38728702e+01],\n",
       "       [ 1.00000000e+00,  2.90954774e+00,  8.46546804e+00,\n",
       "         2.46306834e+01],\n",
       "       [ 1.00000000e+00,  2.93969849e+00,  8.64182723e+00,\n",
       "         2.54043665e+01],\n",
       "       [ 1.00000000e+00,  2.96984925e+00,  8.82000455e+00,\n",
       "         2.61940839e+01],\n",
       "       [ 1.00000000e+00,  3.00000000e+00,  9.00000000e+00,\n",
       "         2.70000000e+01]])"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#3 Prediction of new data set\n",
    "X_new = np.linspace(-3, 3, 200).reshape(200, 1)\n",
    "X_new_poly = poly.transform(X_new)\n",
    "X_new_poly"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYAAAAEGCAYAAABsLkJ6AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAA1h0lEQVR4nO3deXxU1fn48c/JkLCIKAK2yGKkVSyGGCQCI9tgRFBUBFdAFpHihohaqtRiURS0+hWKiogWETew+FNqRQukjICMYlCsoIhUI0GoshSQLZPl+f1xkkCSSTJJZnJned6v17ySmblz77kZOM+95zz3uUZEUEopFX8SnG6AUkopZ2gAUEqpOKUBQCml4pQGAKWUilMaAJRSKk7Vc7oB1dG8eXNJTk52uhlKKRVV1q9fv1tEWpR9PaoCQHJyMllZWU43Qymlooox5vtAr+sQkFJKxSkNAEopFac0ACilVJyKqjmAQPLy8ti+fTtHjx51uikqhBo0aEDr1q1JTEx0uilKxaywBwBjzDzgMuAnEUkpeu1x4HLAD/wHuFFE9tVk/du3b+fEE08kOTkZY0yIWq2cJCLs2bOH7du3c8YZZzjdHKViVl0MAc0H+pd5bTmQIiKpwBZgUk1XfvToUZo1a6adfwwxxtCsWTM9q1MqzMIeAERkFbC3zGvLRCS/6OlHQOvabEM7/9ij36lSls8H06fbn6EWCXMAo4FFFb1pjBkLjAVo27ZtXbVJKaUc5/NBRgb4/ZCUBJmZ4HaHbv2OZgEZY+4H8oFXK1pGROaKSLqIpLdoUe5CtoiTnJzMVVddVfJ88eLFjBo1KqTbcLlcpKWlkZKSwjXXXMPhw4drvK5Ro0axePFiAMaMGcOXX35Z4bJer5e1a9eWPJ8zZw4LFiyo8baVUpXzem3nX1Bgf3q9oV2/YwHAGDMSOzk8TGLsrjRZWVls2rQpbOtv2LAhGzZsYOPGjSQlJTFnzpxS7xcUFNRovS+88AIdOnSo8P2yAeCWW25hxIgRNdqWUiqw44d8PB575O9y2Z8eT2i35UgAMMb0B+4FrhCRmh++Rqjf/e53TJs2rdzrhw4dYvTo0Zx//vl06tSJJUuWAHDppZfy73//G4BOnTrx0EMPATB58mReeOGFSrfVs2dPtm7ditfrpU+fPgwdOpSOHTtSUFDAxIkTOf/880lNTeW5554DbIbNuHHj6NChAwMGDOCnn34qWZfH4ykptfH+++9z3nnnce6555KRkUF2djZz5sxhxowZpKWlsXr1aqZMmcITTzwBwIYNG+jWrRupqakMGjSI//3vfyXrvPfee+nSpQtnnXUWq1evBmDTpk106dKFtLQ0UlNT+eabb2r891YqVhQP+UyebH8CzJxpf585M7TDP1A3aaCvAx6guTFmO/AnbNZPfWB50WTfRyJySwg2VutVBFTNE5Rrr72W2bNns3Xr1lKvP/LII1x44YXMmzePffv20aVLFy666CJ69erF6tWrSU5Opl69enz44YcArFmzhhtuuKHC7eTn5/Pee+/Rv79Nslq3bh0bN27kjDPOYO7cuZx00kl88skn5Obm0r17dy6++GI+++wzvv76a7744gt+/PFHOnTowOjRo0utd9euXfz2t79l1apVnHHGGezdu5dTTjmFW265hcaNG/O73/0OgMzMzJLPjBgxgqeeeorevXvzwAMP8OCDDzJz5sySdq5bt46lS5fy4IMPsmLFCubMmcOdd97JsGHD8Pv9NT5rUSqWlB3yWbAAXnrJ/r56NXTsGGVzACIyRERaikiiiLQWkb+KyK9FpI2IpBU9at/5RxCXy8XEiROZPn16qdeXLVvGo48+SlpaGh6Ph6NHj7Jt2zZ69uzJqlWrWLNmDQMGDODgwYMcPnyY7Oxs2rdvX279R44cIS0tjfT0dNq2bctNN90EQJcuXUry5pctW8aCBQtIS0uja9eu7Nmzh2+++YZVq1YxZMgQXC4Xp512GhdeeGG59X/00Uf06tWrZF2nnHJKpfu7f/9+9u3bR+/evQEYOXIkq1atKnl/8ODBAHTu3Jns7GwA3G4306ZN47HHHuP777+nYcOGwfxplYppZYd8ILxzAJGQBRQ6ETSVMHz4cKZPn84555xT8pqI8Oabb5br1P1+P1lZWbRr146+ffuye/dunn/+eTp37hxw3cVzAGWdcMIJpbb11FNP0a9fv1LLLF26tMoUSxEJaRpm/fr1ARsY8/Nt9u/QoUPp2rUr7777Lv369eOFF14IGIyUiidut8308XqPjfcXnwHEzBxAPEhMTOSuu+4qGQYB6NevH0899RTFc96fffYZAElJSbRp04Y33niDbt260bNnT5544gl69uxZ4+3369ePZ599lry8PAC2bNnCoUOH6NWrFwsXLqSg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zp07ByynXFZxCebjyy/XtPxz2VLQVb0eaNtl3XfffbzwwgscOXKEbt26sXnz5qDbplRM2rgRxo61v8+aBenlLsCNGHEXANxt3GSOyGRqn6khH/4B22nu2rWr5Gg7Ly+PTZs2UVhYSE5ODn369OHPf/4z+/bt4+DBg6VKKQerR48evPHGGwB8+eWXfPHFFxUuW1waetGiRbiLiotccMEFLFy4EIBXX3213E1dKlO2vf/5z3/o2LEj9957L+np6RoAVEwK+jayBw7AVVfB4cMwYsSxQBCh4vJ83d3GHbZJmISEBBYvXsz48ePZv38/+fn5TJgwgbPOOosbbriB/fv3IyLcddddnHzyyVx++eVcffXVLFmyhKeeeiqobdx2222MHDmS1NRUOnXqRGpqKieddFLAZXNzc+natSuFhYW8/vrrgJ2MHj16NI8//jgtWrTgxRdfDHr/+vTpw6OPPkpaWhqTJk1izZo1rFy5EpfLRYcOHbjkkkuCXpdS0SDoKp0itobzli3QsSM8+6yt6xzJRCRqHp07d5ayvvzyy3Kvxbr8/Hw5cuSIiIhs3bpVTj/9dMnNzS233Omnny67du2q6+aFTDx+tyryTJsm4nKJgP05bVoFC/7f/9mFmjQR2bKlTttYFSBLAvSpcXkGEO0OHz5Mnz59yMvLQ0R49tlnq7zgTClVM8V378rNtQf0AedzV62C3//e/j5/Ppx5ZqXrLHVDeAczQjUARKETTzwxYN5/WRVl7iilgud2w8yZMG6cvVfvhAl2hKek487Jgauvtm9OnAiDBlW6vnDe+KW6YmISWKLormYqOPqdqkiyZw8UFtpHqZu1HzliO/xdu6BvX5g2rdL1+HwwZYo9m6irG79XJurPABo0aMCePXto1qxZhemMKrqICHv27NGLylTEKB4GKj5q93iwk75jx8L69dCuHSxcCJVcB1N85J+bawNJQsJx63JI1AeA1q1bs337dnbt2uV0U1QINWjQgNatWzvdDKWAY7drLDVuP2MmvPIKnHACvP02nHJKpevwem0AKe78L7rIng3oHEAtJCYmcsYZZzjdDKVUjHO7j+usV6yA4qKPL71kJwWqUPYswunOH2IgACilVJ369lu47jp7KH///fbCrzICZfkEPItwmAYApZQK1qFDcOWVsHcvDBgADz1UbpHKsnxKnUVEgJjIAlJKqbATgRtvhC++gPbtbcG3ABU+i8f6IyHLpyoaAJRSES/oWjzh9Oij8Le/QZMmdtK3gvIrxWP9LpfzWT5V0SEgpVREi4gLp5YsseP9xtgj/7PPrnDRSBzrr4gGAKVURAs0pFKnnepnn8HQoXYIaNo0uOyyKj8SaWP9FdEhIKVURAvHkErQQ0o7dsDllx8r73zffbXfeATRMwClVEQL9ZBK0ENKhw/DwIHwww/QowfMnRv55Z2rSQOAUirihXJIJaghpcJCGDkSsrJsmYe33oKiO+TFEkeHgIwxdxljNhljNhpjXjfGaPEXpVRYBTWk9MAD9l6+TZrAO+9A8+Z13Mq64VgAMMa0AsYD6SKSAriA651qj1IqPhQPKU2dWsHwz8svwyOP2AjxxhvQoYMj7awLTg8B1QMaGmPygEbADofbo5SKAxUOKa1ZA2PG4KMb3gEz8DTpRm1GniLlxi8VcSwAiMgPxpgngG3AEWCZiCxzqj1KqTj33XcwaBA+/3lk1PsA/7tJJC2v+XUHEXH9QhWcHAJqCgwEzgBOA04wxtwQYLmxxpgsY0yWlnxWSoXF3r1w6aWwezfeM8fil8Ral3KIhpIQTk4CXwR8JyK7RCQP+H/ABWUXEpG5IpIuIuktWrSo80YqpWLc0aM23XPzZujYEc8z15CUZGp93UE0lIRwcg5gG9DNGNMIOwSUAVR9o1ullAqVwkIYPtyO/bduDUuX4m7dOCTXHURDSQgn5wA+NsYsBj4F8oHPgLlOtUcpFYfuuceme550Erz3ng0ChO66g0gvCeFoFpCI/An4k5NtUErFqRkzYOZMSEy0F3qlpDjdojqntYCUUvHnjTfg7rvt7/PnQ58+jjbHKRoAlFLxZdUqO+4P8NhjttJnnNIAoJSKH19+aTN+/H64/XaYONHpFjlKA4BSKj7s2AGXXAL79tkg8Je/xFx1z+rSAKCUin1798LFF8O2bdCtG7z2mk3Qj3MaAJRSse3QIRgwADZtgt/8Bv7xD2jUyOlWRQQNAEqp2JWbC4MHw0cfQdu2sGwZNGvmdKsihgYApVTM8OX4mL56Or4cny3CM3y47fRPPRWWLy+50EtZTpeDVkqpkPDl+MhYkIG/wE+SK4nMnRfj/tsSe1OX99+Hs85yuokRR88AlFIxwZvtxV/gp0AK8Ocdxfv5EmjQAN+jHzD9/U5V3wA+DukZgFIqJniSPSS5kvDnHyUpX/BsS8A3dTkZ96RFdE1+J+kZgFIqJrjbuMk8ZQJTVwiZL4F72gK8eT0ivia/k/QMQCkVGxYuxD3uMdyFwKxZMGwYHp898i8+A4jEmvxO0gCglIp+b70FN9xg6/s/9BDccQcQHTX5naRDQEqp6Pbuu3DddXac5w9/gD/+sfT7rX3QY7r9qUrRMwClVPRavhyuugry8mx554cfLlXfp1xq6IhM3G30NKCYngEopaLTBx/Yom65uXDbbfDEE+WKu5VKDS3w4832OtPWCKUBQCnlKJ8Ppk+nenn6a9fa+j5HjsBNN8FTTwWs7FmcGuoyLpJcSXiSPSFrdyzQISCllGN8PsjIoHp5+h9/bMs6HzpkJ36few4SAh/Lutu4yRyRiTfbiyfZo8M/ZWgAUEo5xuulXJ5+pQHA58M36iK8qYfx/OpC3C+8WGVZZ3cbt3b8FdAAoJQKKV+OL+gjbo+nGnn6H36I78a+ZFx7BH89SEr0kbnzE+3ca8HRAGCMORl4AUgBBBgtIpqrpVSUqm7WTdB5+mvWwCWX4E2znX+BoWRSVwNAzTl9BvAX4H0RudoYkwToXRqUimKBsm6q6qDd7iqGfVatgksvhUOH8LS/mKTE1SUBRid1a8exAGCMaQL0AkYBiIgf8DvVHqVU7ZUUZAtVB/3BB7bzP3wYhg/H/dyLZO5Yp5O6IWJExJkNG5MGzAW+BM4F1gN3isihMsuNBcYCtG3btvP3339fxy1VSlVHdeYAwGYCBRwCWrHC5vkfPgwjR8Jf/6r38a0hY8x6EUkv97qDASAd+AjoLiIfG2P+AhwQkckVfSY9PV2ysrLqrI1KqfCqMA10yRK49lr7xo03wvPPa+dfCxUFACcvBNsObBeRj4ueLwbOc7A9Sqk6FigNlNdft+Ud/H4YNw5eeEE7/zBxLACIyH+BHGNM+6KXMrDDQUqpOFGcBupyFaWBHvg7DBtmI8KkSbascwUXeanaczoL6A7g1aIMoG+BGx1uj1KqDpVKA/3vQtyPDrFvTJtmA4AKK0cDgIhsAMqNSyml4oe7m+Be8TDMesC+MGtWST1/FV5OnwEopSJUhdk5oVRYCPfcAzNn2qGe55+H0aPDtDFVlgYApVQ5NSrSVl3FGT6vvQaJifDKKzbzR9UZnV1RSpUTMDsnlA4ehCuusJ1/48awdKl2/g7QMwClVDnVKtJWXbt321r+69ZBixa280/XqUAnaABQSpUTtpupf/899OsHX38Nycnwz3/CWWeFaOWquqoMAMaYccCrIvK/OmiPUipCVFmkrbq++AL694cdO/C1G4b32tl49jRBq/k4J5g5gF8Cnxhj3jDG9DcmwH3XlFKqSMBbPC5fDt27287/3FvI2Pkykx9vQkZGNW8FqUKqygAgIn8EzgT+iq3c+Y0xZpox5ldhbptSKsoUZw9Nnsyxzv3FF21Fz59/hmuuwTt4Fn6/Cd8EswpaUFlAYivG/bfokQ80BRYbY/4cxrYppaJM6ewhwXv/cpvXn58PEyfCwoV4+iaWLv/gcbrV8SuYOYDxwEhgN/buXRNFJM8YkwB8A/w+vE1USkWLY9lDQhJ+PCsfsBd4Pf003HorEMYJZlVtwWQBNQcGi0ipQvwiUmiMuSw8zVJKRSO3GzLfOoD31kV4vpuH+4Qv4I137BBQmeW043delQFARB6o5L2vQtscpVRU27IF9/jLcX+3BVq2hH+sgvO0ynuk0iuBlVKhsXw5dO0KW7ZAaip89FHAzj9glpByhF4IppSqHRF45hmYMMHO/l55Jbz8si3xUEad1BhSQdMzAKVUzeXl2cndO+6wnf/998Obbwbs/KEOagypatEzAKVUzezZA1dfbXvx+vVh3jwYOrTSj4S1xpCqNg0ASsW5GtX9/+wzGDwYsrPtZO/bb0OXLlV+TFNAI4sGAKXiWI3G5F9+GcaOhaNH4fzz4a23oFWrKrdzfKevHX9k0ACgVBwLNCZfYefs99u7dz39tH0+Zgw89RQ0aFDpNnTiN3LpJLBScax4TL7Ksgw7d9pe/Omn7YJz59rbN1bR+YNO/EYyx88AjDEuIAv4QUT0ymKl6lBQY/Jr19rJ3p077VDPm2/afP8g6cRv5HI8AAB3Al8BTZxuiFLxqMIx+cJCePJJmDTJFnPr3RsWLYJf/KLa69eJ38jkaAAwxrQGBgCPAHc72Ral1HH27IFRo+Af/7DP77kHpk/Hl5WId171O3Kd+I1MTp8BzMRWEz2xogWMMWOBsQBt27atm1YpFc98PrjuOsjJwfebE/HedSWe/ldBVqJO5sYYxwJAUSXRn0RkvTHGU9FyIjIXmAuQnp4uddM6peKQCL7xr+OdvQlPYSvodyIZPb7Fv/M1khYsZiSZ+P3u4DKGVFRwMguoO3CFMSYbWAhcaIx5xcH2KBW/du3C13MiGU9fyeTCB8mo9wELhg3BX5hHgRTgL/BDsldv5BJjHAsAIjJJRFqLSDJwPfAvEbnBqfYoFc1qVWHz/fehY0e8HybiJ4kC6uGXJNiWQZIrCZdxkeRKYkQvD5mZMHWqDv/ECqfnAJRStVTjC62OHoX77oO//AUAT9p+kjYn4M+z6xlxoZsRrTPxZnvxJHtwt3FDG+34Y0lEBAAR8QJeh5uhVFSq1tW8xTZuhCFD7M969WDqVNwTJ5K5LqFMuqbbdvwqJkVEAFBK1Vy1LrQqLLRX8/7+95CbC2eeCa+9BunpgKZrxhsNAEpFuaAvtMrOhtGjYeVK+3zMGJgxo8La/Sr2aQBQKgZUeuQuYuv23HMPHDwILVrAc8/BoEF12kYVeTQAKBWlgqrjn5MDN91k79cLcM019vaNLVrUUStVJNMAoFQUqjLzRwTmz7f36T1wAE45BWbPtlf4KlVEy0ErFYUqLbH8n/9A3752vP/AARg4EDZt0s5flaMBQKkoFLCOf14ePPYYpKTYU4Jmzezdu956C375S4dbrCKRDgEpFYXcbpg505bmv+oqcCdmwflj4PPP7QI33GBLOetYv6qEBgClopDPZ4f3c3OFf60ogMK5jOVzSE6GOXOgXz+nm6iigAYApaKQd6WQe1QolAQKcTGOp+k4pCPu50fDCSc43TwVJXQOQKkQ8uX4mL56Or6c8lXZalWw7XibNuFZPI4EyQcEMBQkJOLteId2/qpa9AxAqRDx5fjIWJCBv8BPkiuJzBGZJXV0alyw7XgHDsCDD8KsWbjz83mmURLjcp+gQBKoX99oeWZVbXoGEGNCdpSpqs2b7cVf4C+pn+/N9h57z1tJ2mZVCgttTv/ZZ9uJ3YICuPVWxuZM5oPVLh5+2Gh5ZlUjegYQQ0JylKlK8eX4SpdDroQn2UOSK6nkDMCT7Dn2nqcaBduO5/XC3XfDZ5/Z51272it5O3cGtHibqh0NADGkRmWBVYUqG9IJxN3GzczzMnlzvZerzisdMIIu2FZsyxZbsXPJEvu8dWt7ajd0KCToibsKDQ0AMaTGR5kqoEBDOseP6ZftzH0+mHCVm9xcN/9KAJ6BsWOPrS+oo/U9e+wtt555BvLz7aTufffZs4BGjcKwlyqeaQCIIdU+ylSVqmhIp6KhNq/XltgvLLSPceOgY8cgv4eff7almZ94wv5ujC3iNnUqtGwZzt1UcUwDQIzRMeHQcbdxkzkis9wcQEVDbR6PHZ0pLLSfLygIYhju6FF49lmYNg1277av9etnSzqce274dk4pNAAoVSl3m/K3RKxoqM3ttiM348bZzr9+/UqG4fLybGbPQw/B9u32te7dbSDo1Ss8O6NUGXEXAIKqoV6DZUO9bRW5KhtqGzvWDvtU+D37/fDSS3ZC97vv7Gvnnms7/ksusUM/tVCdrCWlEBFHHkAbYCXwFbAJuLOqz3Tu3FlqY+1akYYNRRLarpV6fabJc0vXVrmsy2V/rq140WptO1TrU9batSLTpkXB3/PIEZGnnxZp00bEVusXad9eZOFCkYKCkGxi7ba10vDhhuJ60CUNH24oa7dF+h9F1RUgSwL0qU6eAeQD94jIp8aYE4H1xpjlIvJluDbo9UJuCx+FwzModPkZty6JjimBU/tCnVKpKZqhFxXXPRw6BHPn4lvwCN7Ge/AIuM85ByZPhquvtvWcQ6SyrCWlAnEsAIjITmBn0e8/G2O+AloBYQsAHg8kLPdS6PJDQgEFVPyfJNQplZqiGXoRHVR//BGefhpmz8bXaC8ZI8Hvwl5PMOo53G27B/xYbYYJK7sQTalAImIOwBiTDHQCPg7ndtxueGaih3HrkijAT/16Ff8nCXVKZV2kaNblHEMkzGdEZFD96itbruHll21OKODt1xp/4g4KKMRPAd7vVwUMALU9o6koa+n49Tv9nakIE2hcqC4fQGNgPTC4gvfHAllAVtu2bUMyHrZ221qZtmpaRIyRhmoMu2R+I0EkMVHkuedC077KthUJ8xl1OQdQ4bYKC0X+9S+Ryy47Nr5vjMjAgSKrV8va7z8Mamx+2jT7NwX7c9q00LY9Ur4zVfeoYA7A6c4/EfgncHcwy9d2EjjShPI/5bRptvMv7n/q1Qvff/JwdlShEOqgsHatyC23iNSvX+a72r/fTux26HDsD1+/vsjNN4ts3lx6HUEcdISzk47070yFV0UBwLEhIGOMAf4KfCUiTzrVDieFcgzb47HzicUXIRUWhm9MPCKHXoqEemK4eH1Hj9oeHsDvF7x3/R33phvg4EH7YsuWNgf0ttvg1FPLrSfQ9QTllgnjMGEkf2fKOU7OAXQHhgNfGGM2FL32BxFZ6kRjgs2fDmWedSj/U7rdds7x9ttt51/pRUi1FExH5dR4cziyt3Jzizt/wSAkFRzF8/GjwEF70dbtt8OgQZCYWOv2h+tKbi0TogJxMgtoDVC7q15CJNiqj9WtDlmVUP+nrPIipBCqrKNyMj0zpEe6IjTb/y2Fhe1KXhrI2/y+wdO4R6XBbXPtHzxKaJkQVVZEZAGF3ebN8ItfQNOmAd8ONn86HHnWof5PGQn/yUN1FF6Ts4iQBNWcHHj9dZg/nz1fDSSBqRRSjwQK6DKoDe75b0OTJjVYsVKRJT4CwNixtjfp1QsGDoQrroDk5JK3g82f1jzr4ITiKLz4LCK3hY+E5V6emehh7CXB9eY1CoK7dsHixfDaa7BmTcnLnqZnUP/nQvwiJCW58Ew8H7TvVzHCSPHMVhRIT0+XrKys6n0oP9/WWFm50h6SFktNtcFg4EA47zx82z+q8zmAUInE/O7atmn6dPjjHHvVNi4/iQlJfDC6dkNu5ezdC++8AwsXwvLlx/59NGgAl18Ow4bBpZfiy0qMuL+vUtVhjFkvIunlXo/5AFBs715YuhT+/nd4771j2RsArVrBgAG2DO+FF8LJJ4ekvdVVk04zHOPt4Qoo1S3E1+v+6eT3nAwJBSTg4uELpzKp56TatTEnx95l66234IMPjnX69epB374wZAhceSWceGK190+pSFVRAHD8QrDqPEJ2HcDRoyLvvWeTu0877VgOd3GS9AUXiEyZIuLzieTnh2abVahpDnio87vDlYtek/U+t3StJE5pKAlTSl9AVa11FRSIrF8vMnWqSOfO5b/rjAyRZ58V2bUrNDsaIlFT5E5FBSLtOgBH1a8P/fvbx+zZ8Omn8P77sGwZrF177DFlij0buOgie6jZqxe+kw7g/X5VyIeAajpxGur87lCnURYfqW/bFni9lR3Jj73ETceU4G/IUuKnn+x3+c9/2p8//XTsvUaN7Pd+5ZX2rO+UU2q+c2ESFUXuVGwIFBUi9VEnVwLv3y+yZInIbbeJ/PrXpY4Y17ZGGt6PuP6ENJySKGuX/VUkLy8km63NkXcojxZDeQZw/Lrq1xdJSiq93ppuq9zn/nlA5J13RH73O5Hzzit9lA+2BPOYMfZ7PXy45jtUR/SqXRVq6BlAkJo0sVlCV1xhn3/7LaxYAatW4d33Dn7XAQoM+Avy8D50E+7Bd9rDsy5d4Pzz7c8a3MO1NumLwWS9BDtmHsprE44/Ugf47W+hbdtj650+vWZnG+5f/UTmnzbjfednPLv+hrv/gmOX6YI9w+vd2x7p9+sHv/lNrW+0Upf0ql1VV+JmEjgUE5u+bWuPXQhWaMhc3hK3b3v5BVu1OhYQzj8fOnWCZs1qttFa8vlgwQJ48UWbEFXZkEI47oBW2VBGUEMdR47YIbp16+Djj+0jO7v0MomJ9u/cu7d99Oxph3qiWCRmdqnoFddZQKEcUy2XBrpzJ3z0ke2gPvnEPg4cKP/Bli3tVaMpKfZnx47QoQM0bFj5+mshUB0blwumToVJkwIvG+px56o6spL3ewvuM/4L//63fXz+uf351Vc2ch3vhBMgPd1e19G7t11xhHf42qErJ1UUAOJiCCiYic2gh0jKFvVq2dLWgRk0yD4vLIRvvjkWENatg40bbaDYudNOShZLSIBf/QrOPBN+/WvmJp3KuEYPU5CQR/16tS81UbzfxZ2/MRUPKYTr5irlhqf8fjustmULbNmCu+jBjC/txVhlJSTYaza6dIGuXe2jQ4eQ3kkr3HRSV0WquAgAVY2phvQ/aEICtG9vH8OH29cKC+2wxRdflH5s2WKDxTff4KMbt/foT/6FeUABublH8N4+APehTnZI6bTT7M/jH7/8pc1fD2K/XS4YPRpGjAi8byEZd87Phz17bNbN9u029afsIyen9AV5xzvpJNvZp6baG6WnptozphNOqEFjIkdE37lMxbW4CABVTWyG/T9oQgK0a2cfAwceez031waB//wH79xTKNyYAAWPgfhxFRo8n/0Ptv+r4vUaY+sbNW1q0xlPOeXY702b4j75ZDJvOwNv9ul4Uv+H+9zD8HNDWNXARgRjbNuMwV0vgcynG+P9pBGelD24f94N//DbP0hurr1w7sCB8o/du22H/9NPtvOvakjRGFuGo317OOusY4/27e0McRRN1gZLJ3VVpIqLOYCqRMIpeqnaN7/y8syE7ow961R71PzDD8ceO3Yc+/3HH6vucOuSMXay+9RT7dDY6afbTv34R5s2ttRCnNE5AOWkuJ4EDkYk/Aetdhvy82HfPlvm4n//sz+P/33fPptFU/Zx9KgdliostAHk+J9JScce9esf+71xY5sie/zjxBOheXPb4Z96qu38KxmSUko5QwNANUVCQFBKqVCI6yyg6vL5bMefl2dTzHXSTikVixKcbkAkWrDgWPqk32+fK6VUrNEAoELK57MlHnw+p1sSvFC1ORr3XcU3HQIKYMQIWzqhOCtoxAinWxQdIiGbqrpC1eZo3Hel9AwgALfb3kDskUfsT/2PHJxA11NEulC1ORr3XSlHzwCMMf2BvwAu4AURedTJ9hwvEm6uHg7hvKVlNF7wFKo2R+O+K+VYGqgxxgVsAfoC24FPgCEi8mVFn6nLNNBY5MvxHatm6qp9raGA24jQ9NnK2hWqNkfqvisViWmgXYCtIvItgDFmITAQqDAARKtI6Ri82V78BX4KpAB/gR9vtrdGAaCy/YnEM6eqxudD1eZI3HelKuNkAGgF5Bz3fDvQtexCxpixwFiAtm3b1k3LQiiSJgc9yR6SXEklZwCeZE+11xFJ+xMsLcamVGBOTgIHqvpVbjxKROaKSLqIpLdo0aIOmhVakTQ56G7jJnNEJlP7TC03/OPL8XHrq9O59RFfpWmMTu2PL8fH9NXT8eVUP8eyeHze5aq4Gqymb6p45OQZwHagzXHPWwM7HGpL2ETa5GC5+xlgO9c+8zPIzfdDQRLzhmfifdkdvrLR1VTbuYvKqsFG4xmNUqHiZAD4BDjTGHMG8ANwPTDUwfaERSjvsRsu3mwv/kI/JBSA+Mlr5cXrDRwAnNifUMxdVDQ+r8NDKp45FgBEJN8YMw74JzYNdJ6IbHKqPaFWdqI0kjsVT7KHpIQkcvP8UJhE4g+eSo/s63p/QjF3UeG6PZF1hqZUXdJqoGEQjcMKvhwfC1Z5IdvDiAsDH/07KZzXL0RKlpZS4RKJaaAxKxqHFdxt3LiHRW4jA81dhGzdEX6GplS4aCmIMKgq60QppSKBngGEQTRM/IZzSEUpFR00AIRJqIcVQjlOXRclIZRSkU8DQBQI9aRyqEpCKKWim84BRIFQX31bnFbpMq6Qp1UqpaKHngFEgVDnqheXhNA5AKXimwaAKBCOSeVwplUqpaKDBoAo4USuul4gpVRs0wCgAorGq5mVUtWjk8AqoEgqY62UCg8NACogvZpZqdinQ0AqoGi4mlkpVTsaAFSFtEiaUrFNh4CUUipOaQBQYaH32VUq8ukQkAo5TSFVKjroGYAKOU0hVSo6aABQIacppEpFBx0CUiGnKaRKRQdHAoAx5nHgcsAP/Ae4UUT2OdEWFR6aQqpU5HNqCGg5kCIiqcAWYJJD7VBKqbjlSAAQkWUikl/09COgtRPtUEqpeBYJk8CjgfcqetMYM9YYk2WMydq1a1cdNksppWJb2OYAjDErgF8GeOt+EVlStMz9QD7wakXrEZG5wFyA9PR0CUNTlVIqLoUtAIjIRZW9b4wZCVwGZIiIduxKKVXHnMoC6g/cC/QWkcNOtEEppeKdceLg2xizFagP7Cl66SMRuSWIz+0Cvq/hZpsDu2v42Uij+xJ5YmU/QPclUtVmX04XkRZlX3QkADjBGJMlIulOtyMUdF8iT6zsB+i+RKpw7EskZAEppZRygAYApZSKU/EUAOY63YAQ0n2JPLGyH6D7EqlCvi9xMweglFKqtHg6A1BKKXUcDQBKKRWn4ioAGGOmGmP+bYzZYIxZZow5zek21ZQx5nFjzOai/XnLGHOy022qCWPMNcaYTcaYQmNMVKbrGWP6G2O+NsZsNcbc53R7asoYM88Y85MxZqPTbakNY0wbY8xKY8xXRf+27nS6TTVljGlgjFlnjPm8aF8eDOn642kOwBjTREQOFP0+HugQzAVokcgYczHwLxHJN8Y8BiAi9zrcrGozxvwGKASeA34nIlkON6lajDEubEnzvsB24BNgiIh86WjDasAY0ws4CCwQkRSn21NTxpiWQEsR+dQYcyKwHrgySr8TA5wgIgeNMYnAGuBOEfkoFOuPqzOA4s6/yAlA1Ea/WCmpLSJficjXTrejFroAW0XkWxHxAwuBgQ63qUZEZBWw1+l21JaI7BSRT4t+/xn4CmjlbKtqRqyDRU8Tix4h67fiKgAAGGMeMcbkAMOAB5xuT4hUWlJbhVUrIOe459uJ0s4mFhljkoFOwMcON6XGjDEuY8wG4CdguYiEbF9iLgAYY1YYYzYGeAwEEJH7RaQNtgT1OGdbW7mq9qVomSpLajstmP2IYibAa1F7ZhlLjDGNgTeBCWXO/qOKiBSISBr2LL+LMSZkw3Mxd1P4qspQH+c14F3gT2FsTq3ESkntanwn0Wg70Oa4562BHQ61RRUpGi9/E3hVRP6f0+0JBRHZZ4zxAv2BkEzUx9wZQGWMMWce9/QKYLNTbamt40pqX6EltR31CXCmMeYMY0wScD3wd4fbFNeKJk7/CnwlIk863Z7aMMa0KM7wM8Y0BC4ihP1WvGUBvQm0x2adfA/cIiI/ONuqmqlpSe1IY4wZBDwFtAD2ARtEpJ+jjaomY8ylwEzABcwTkUecbVHNGGNeBzzYssM/An8Skb862qgaMMb0AFYDX2D/rwP8QUSWOteqmjHGpAIvYf9tJQBviMhDIVt/PAUApZRSx8TVEJBSSqljNAAopVSc0gCglFJxSgOAUkrFKQ0ASikVpzQAKFVDRVUnvzPGnFL0vGnR89OdbptSwdAAoFQNiUgO8CzwaNFLjwJzReR751qlVPD0OgClaqGo5MB6YB7wW6BTUVVQpSJezNUCUqouiUieMWYi8D5wsXb+KproEJBStXcJsBOI2puoqPikAUCpWjDGpGHvBtYNuKvoblRKRQUNAErVUFHVyWex9ea3AY8DTzjbKqWCpwFAqZr7LbBNRJYXPZ8NnG2M6e1gm5QKmmYBKaVUnNIzAKWUilMaAJRSKk5pAFBKqTilAUAppeKUBgCllIpTGgCUUipOaQBQSqk49f8BZNDso9XlN7oAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "y_new = regression.predict(X_new_poly)\n",
    "plt.plot(X_new, y_new, \"r-\", linewidth=2, label=\" New Predictions\")\n",
    "plt.plot(X_train, y_train, \"b.\",label='Training points')\n",
    "plt.plot(X_test, y_test, \"g.\",label='Testing points')\n",
    "plt.xlabel(\"X\")\n",
    "plt.ylabel(\"y\")\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Pipeline Concepts "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.pipeline import Pipeline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [],
   "source": [
    "def poly_regression(degree):\n",
    "    X_new = np.linspace(-3, 3, 200).reshape(200, 1)\n",
    "    \n",
    "    poly_features=PolynomialFeatures(degree=degree,include_bias=True)\n",
    "    lin_reg=LinearRegression()\n",
    "    poly_regression=Pipeline([\n",
    "        (\"poly_features\",poly_features),\n",
    "        (\"lin_reg\",lin_reg)\n",
    "    ])\n",
    "    poly_regression.fit(X_train,y_train) ## ploynomial and fit of linear reression\n",
    "    y_pred_new=poly_regression.predict(X_new)\n",
    "    #plotting prediction line\n",
    "    plt.plot(X_new, y_pred_new,'r', label=\"Degree \" + str(degree), linewidth=2)\n",
    "    plt.plot(X_train, y_train, \"b.\", linewidth=3)\n",
    "    plt.plot(X_test, y_test, \"g.\", linewidth=3)\n",
    "    plt.legend(loc=\"upper left\")\n",
    "    plt.xlabel(\"X\")\n",
    "    plt.ylabel(\"y\")\n",
    "    plt.axis([-4,4, 0, 10])\n",
    "    plt.show()\n",
    "    "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYIAAAEKCAYAAAAfGVI8AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAAp/UlEQVR4nO3deXiU5dn38e+ZZQAjKiI+IGDRp4KCCyJaRmydNrhV7dtisWor1g15FPcVl4KiDdalWrUqIi61tSrYWrW2auq0iuMCrRWEKhapoCibBQXMJJPr/eNKCJBtklnuWX6f48gxS+6ZORPIfd7Xdl7mnENERIpXSdABiIhIsJQIRESKnBKBiEiRUyIQESlySgQiIkVOiUBEpMhlLBGY2QwzW2Fm8zd7bkcze8HMFjXc9sjU54uISHIy2SJ4EDhyq+euAKqdc3sA1Q2PRUQkQJbJBWVmNgB4xjm3d8Pjd4GIc265mfUBos65QRkLQERE2lWW5c/7H+fccoCGZLBzawea2ThgHEBFRcUBe+65Z5ZCFJFisT6+nndXv4vDYQ4GrYKKvgOgZ8+gQ0uLuXPnrnLO9WrvuGwngqQ556YB0wCGDx/u5syZE3BEIlJoql6u4pqXriHhEpQkYOzfSpn41Fuw/fZBh5YWZvafZI7L9qyhTxu6hGi4XZHlzxcR2SQyIEKoNEQpRqgeIn1HFkwS6IhsJ4I/AKc03D8FeCrLny8iskm4f5jqk19kyrydqX4IwmMuDDqkQGSsa8jMHgUiwE5mtgyYBEwFHjez04EPgTGZ+nwRkWSEV3UlPOtTPy7w7W8HHU4gMpYInHMntvKtynS8f21tLcuWLePLL79Mx9sVpa5du9KvXz/Ky8uDDkUkOA895G9POglCoWBjCUjODha3Z9myZXTv3p0BAwZgZkGHk3ecc6xevZply5ax2267BR2OSDDicfjNb/z9U05p+9gClrclJr788kt69uypJNBJZkbPnj3VopLi9txzsGoVDBkCw4YFHU1g8jYRAEoCKdLvT4regw/621NOgSL+e8jrRCAi0mkffQRPPw1lZXDyyUFHEyglghSUlpYydOhQhgwZwn777cett95KfX190GFt8vjjjzN48GCGDBnCSSedFHQ4Irnl/vshkYDvfQ969w46mkDl7WBxLujWrRtvvfUWACtWrOCkk05i7dq1XHvttSm/dyKRoLS0tNOvX7RoEVVVVcyePZsePXqwYoXW7olsUlcH06b5++PHBxtLDlCLIE123nlnpk2bxp133olzjkQiwaWXXsqBBx7Ivvvuy7333gtAfX09Z599NkOGDOGYY47h29/+NjNnzgRgwIABXHfddRxyyCE88cQTPP/884TDYYYNG8aYMWP44osvAJg7dy6HHnooBxxwAEcccQTLly9vFs99993HOeecQ48ePTbFJ1LIYjGoqvK37Xr2Wd81NHAgfPObGY8t1xVGiyBTgzwdrMy6++67U19fz4oVK3jqqafYfvvtefPNN6mpqWHkyJEcfvjhzJ07lyVLljBv3jxWrFjBXnvtxWmnnbbpPbp27corr7zCqlWrGD16NC+++CIVFRXceOON3HrrrUycOJFzzz2Xp556il69evHYY49x1VVXMWPGjC1iee+99wAYOXIkiUSCyZMnc+SRW1cFFykMsRhUVvrZoKEQVFdDONzGC+65x9+edVZRDxI3KoxEkEMay3o///zzvP3225uu9teuXcuiRYt45ZVXGDNmDCUlJfTu3ZtvbnU18oMf/ACA1157jQULFjBy5EgA4vE44XCYd999l/nz53PYYYcBvgupT58+zeKoq6tj0aJFRKNRli1bxte//nXmz5/PDjvskKkfXSQw0ahPAomEv41G20gEixfDn/8MXboU9dqBzRVGIsjgngodsXjxYkpLS9l5551xznHHHXdwxBFHbHHMs88+2+Z7VFRUAD6hHHbYYTz66KNbfH/evHkMGTKEWDvt3379+jFixAjKy8vZbbfdGDRoEIsWLeLAAw/sxE8mktsiEd8SaGwRRCJtHHzHHf6ccfzxBVNuOlUaI0iTlStXMn78eCZMmICZccQRR3D33XdTW1sL+K6a9evXc8ghhzBr1izq6+v59NNPiUajLb7fiBEjmD17Nu+//z4AGzZs4L333mPQoEGsXLlyUyKora3lnXfeafb67373u7z00ksArFq1ivfee4/dd989Az+5SPDCYd8dNGVKO91C69b52UIAFxZngbmWFEaLICAbN25k6NCh1NbWUlZWxsknn8xFF10EwBlnnMGSJUsYNmwYzjl69erF73//e4477jiqq6vZe++9GThwIF/72tfYvoWyt7169eLBBx/kxBNPpKamBoDrr7+egQMHMnPmTM477zzWrl1LXV0dF1xwAUOGDNni9UcccQTPP/88gwcPprS0lJtuuomeuvqRAhYOtzMuADBjBnz+ORx6KOy/f1biygcZ3aoyXVramGbhwoXstddeAUWUmi+++IJtt92W1atXc9BBBzF79mx6BzSPOZ9/jyKbi8X82EAk0kpCSCRgjz3ggw/gd7+D7363Y6/PQ2Y21zk3vL3j1CIIwDHHHMN///tf4vE411xzTWBJQKRQJDVr6KmnfBLYfXc49tiOv76AKREEoLVxARHpnHZnDTkHt9zi759/Pmy2WDMWg8mToaYG6uuTmHVUgPI6ETjnVDgtBfnQLSiSjHZnDb38Mrz6KvToAaeeuunpxpZAYxIoKUli1lEByttZQ127dmX16tU6mXVS434EXbt2DToUkZS1O2uoqsrfnncedO++6enGlkRjEhg1qvi6hSCPB4u1Q1nqtEOZFIW//x0OOAAqKuA//9li7UChjw0U/GBx40IpEZE2NbYGzjqr2QKyxpZEoc0W6qi8TQQiIu36179g1ix/ud+wxmdrSa0/KHB5O0YgItKuKVP8jKEf/xj69gU6WKW0SKhFICKF6Z134NFHobwcrroKKPwxgc5Si0BECtO11/rWwJlnwq67Ai2vNxAlAhEpRG+/DU884UtNX3nlpqcb1xuUlhbneoHWqGtIRArPpEn+dvz4TWMDoFlCrVEiEJGMCaSQ2+zZ8PvfwzbbwBVXNPu2Zgk1p0QgIhkRyMCsc3Dppf7+JZeACjomRWMEIpIRgQzMPvmkz0A77+wTgSRFiUBEMiLrA7O1tU1dQZMnb1FTSNqmriERyYh0DcwmPc4wbRq8/z4MHAhnnNG5DytSSgQikjGpDswmPc6wbp1fNwAwdapfRCZJU9eQiOSspMcZpk6FlSth5MhmW1BK+5QIRCRnJTXO8P77TbuP3XwzaLOqDlPXkIjkrKTGGS66yDcXxo6FESOyHGFhUCIQkZzW5jjDc8/B00/7GUJTp2Y1rkISSNeQmV1oZu+Y2Xwze9TMtF+iiHRMPO43ogf4yU+gT59g48ljWU8EZtYXOA8Y7pzbGygFTsh2HCKS5267jdiinlTtdAuxg87v8Mu1L0GToLqGyoBuZlYLbAN8HFAcIpKPPv6Y2OQ/U0k18TVdCR1Z0qESFtqXYEtZbxE45z4CbgY+BJYDa51zz299nJmNM7M5ZjZn5cqV2Q5TRHLZuecS3XgQcbqQqC/pcAkL7UuwpSC6hnoA/w/YDdgFqDCzH219nHNumnNuuHNueK9evbIdpojkqlmz4MkniXR7g1BX61QJC+1LsKUguoZGAR8451YCmNmTwMHAIwHEIiL5ZM0aOOccAMI3H0f1/iWdKmGhfQm2FEQi+BAYYWbbABuBSmBOAHGISL655BL49FM45BAYP55wSedP4tqXoEkQYwSvAzOBvwPzGmKYlu04RCTPvPACPPCA335y+nQoUWGEdAlk1pBzbhIwKYjPFpE8tH49jBvn70+aBIMGBRtPgVFKFZHcd/XVsGQJDB2qDWcyQIlARHLba6/B7bf7KT73368S0xmgRCAiuaumBk4/3e9FfMklMGxY0BEVJCUCEcldVVWwYAHssYcfG5CMUCIQkdw0fz789Kf+/n33QbduwcZTwJQIRCT3JBK+S6i2FsaPh0MPDTqigqZEICK55xe/gDfegL594cYbg46m4CkRiEhuWbzYTxcFuPtu2G67YOMpAkoEIpI7nPMLxzZsgBNPhGOPDTqioqBEICK544EHfDW4nj392gHJCiUCEckNy5fDxRf7+7ffDio/nzVKBCKSGyZMgP/+F446Ck46KehoiooSgYgEr2GzGbbdFu65B8yCjqioKBGISKBiC/5M1fQfE+uHnyq6665Bh1R0gtq8XkSE2NIYlY8dTfygBKEDS6g+Zj+0V0z2qUUgIoGJVk8nToJECcTLjOh//hZ0SEVJiUBEgrF+PZFf/pFQAkoxQqUhIgMixGK+1lwsFnSAxUNdQyISjKuvJvzmJ1RvuwfRSWOJ7F4Jy8JUVkI8DqGQX1KgfYUzT4lARLJvs81mwjf/lnDDPgNVj/gkkEj422hUiSAb1DUkItm1+WYzF1+8xWYzkYhvCZSW+ttIJLAoi4paBCKSXY2bzXz1qzB58hbfCod9d1A06pOAWgPZoUQgItmz+WYz06e3uNlMOKwEkG3qGhKR7Egk4Iwz/GYzZ52lzWZyiBKBiGTHHXfA66+3u9lMbGmMqperiC3V/NFsUdeQiGTe4sVw1VX+/t13w/bbt3hYbGmMyocriSfihEpDVI+tJtxf/USZphaBiGSWc74raMMGOOGENjebiS6JEk/ESbgE8USc6JJo9uIsYkoEIpJZDz4IL76Y1GYzkQERQqUhSq1000pjyTx1DYlISmKxNqZ7fvIJXHSRv3/bbbDzzm2+V7h/mOqx1USXRIkMiKhbKEuUCESk02Ix2i4Jcd55frOZI4+EH/4wqfcM9w8rAWSZuoZEpNOi0eYlITb5wx/giSegokKbzeQ4JQIR6bRWS0KsWwdnn+3v33ADfOUrAUUoyVDXkIh0WqslISZOhI8+goMO8nsR46eGqu8/NykRiEhKmpWEmD3brxUoK4P77oPSUq0PyHHqGhKRFnVqhW9NDZx5pl87cPnlsO++gNYH5LpAWgRmtgMwHdgbcMBpzjmtJxfJEZ2+gq+qgoULYeBAuPrqTU83rg9ofD+tD8gtQXUN3Q78yTn3fTMLAdsEFIeItKClK/h2E8GCBU2VRadNg65dN31L6wNyW9YTgZltB3wD+DGAcy4OxLMdh4i0rsNX8PX1TZVFx41rsbKo1gfkriBaBLsDK4EHzGw/YC5wvnNu/eYHmdk4YBzArrvumvUgRYpZh6/g777bry7r06fNyqKSm8w5l90PNBsOvAaMdM69bma3A+ucc9e09prhw4e7OXPmZC1GEemApUth8GD44guYNQtGjw46ImlgZnOdc8PbOy6IFsEyYJlz7vWGxzOBKwKIQ0TSIHbyL4l+MYHINxxhJYG8lPVE4Jz7xMyWmtkg59y7QCWwINtxiEjqYre8SuVfryFOiNAbJVTHtM1kPgpqHcG5wK/N7G1gKPDTgOIQkc7auJHoDbOJEyJBGfHaki1rDUneCGT6qHPuLaDdfisRyWFVVUQ+e4GQTSBeUkooZE21hiSvqMSEiHTce+/BjTcSJk713YuIrtm35f0IJC8oEYhIxzgH55zj606fdhrhs/ZF5//8plpDItIxjz3mt57ccUetGSgQSgQikry1a+HCC/39G2+EnXYKNh5JCyUCkSISi/m6cLHOlnicNMnvQzxiBJx2Wlpjk+BojECkSLS7v3B7/vEPuOMOKCnxJSVKdB1ZKPQvKVIk2txfuD319fB//+dvzzsPhg7NTJASCCUCkSLR6v7CyZg+HV5/HXbZBa69NkMRSlDUNSRSJFrdX7g9K1fCFQ3lwH7+c9huuwxFKEFRIhApIs32F07G5ZfDZ5/BYYfBmDEZiUuCpa4hEWndK6/AAw/4vqQ77wSzoCOSDFAiEJGW1db6AWLwXUMDBwYbj2SMEoGItOz222H+fNh996Yxgs2kvCZBcobGCESkuaVLYfJkf//OO6Fbty2+nfKaBMkpahGISHMXXkhs/T5UDXmE2A5HNft2SmsSJOe02yIwswnAr51zn2UhHhEJ2nPPEZv1EZVUE/9XN0KVza/4G9ckNLYItA9BfkumRdAbeNPMHjezI800bUCkYG3cCBMmECVC3LqSSFiLV/yNaxKmTFG3UCFot0XgnLvazK4BDgdOBe40s8eB+51z/850gCKSRVVVsHgxkd2XElpubV7xd2pNguSkpAaLnXPOzD4BPgHqgB7ATDN7wTl3WSYDFJEsadh1DCD80HiqS63jq5AlLyUzRnAecAqwCpgOXOqcqzWzEmARoEQgku8233Xs1FPhkEMIowRQLJJpEewEjHbO/WfzJ51z9WZ2TGbCEpGsevzxpl3HfvazoKORLEtmjOAnbXxvYXrDEZGsW7euadexqVO161gR0joCkWL3k5/A8uV+17HTT0/qJVpVXFi0slikmL31Vod3HdOq4sKjFoFIsdp817Fzz0161zGtKi48SgQixer+++G116BPH7juuqRfltJOZ5KT1DUkUoxWrvQbzkCHdx3r9E5nkrOUCESKUeOuY6NGwfHHd/jlWlVcWNQ1JFKgWp3Zs/muY3fdpV3HRC0CkULU6syezXcdu/xy7TomgFoEIgWp1Zk9v/hF065jEyd26D21dqBwqUUgUoBa3C9g2TKYNMkf0MKuY23R2oHCpkQgUoBanNnz/Qtg/Xo47jg4qvmuY21pqYWhRFA4lAhECtQWM3v++EeYNQsqKvx00Q7SjmSFTYlApNBt2AATJvj7kydD//4dfgutHShsgSUCMysF5gAfOedUzlokU264AT74APbdF84/v9Nvo7UDhSvIWUPnAypjLZJJCxfCTTf5+/fcA+XlwcYjOSmQRGBm/YCj8TueiUgmOOfXDNTWwrhxupyXVgXVIrgNv8VlfWsHmNk4M5tjZnNWrlyZtcBECsavfgV//Sv06uUXAACxpTGqXq4ittQvBtDaAIEAxggatrdc4Zyba2aR1o5zzk0DpgEMHz7cZSc6kQKxZg1cfLG/f8stsOOOxJbGqHy4kngiTqg0xG3DqrnguLDWBkggLYKRwHfMbAnwW+BbZvZIAHGIFK4rroBVqyASIfa/P6KqCh7+W5R4Ik7CJYgn4syaG9W+AgIE0CJwzk0EJgI0tAgucc79KNtxiBSsV1+F++6D8nJi4x6gcpQRj0PpgAhlp4QA3yI4bliEl7U2QNA6ApHCUlsL48f7+5dfTnTJgE1X/SwJc2ZJNbt+I0pkQIRw/zD7aG2AEHAicM5FgWiQMYjkg1gsyRP27bfDvHm+qNyVVxJ5a8sVwWO/FSa82RtobYCAWgQiOS/pgm8ffthUVO6uu6BbN60IlqQoEYjkuKQKvjnny0hs2ABjxsCRR276lq76pT3aj0AkxyW1WfwTT8DTT/u9hztRVE6Km1oEIjmu3e6dNWvg3HP9/Ztugr59sxyh5DslApE80Gb3zsUXw4oV8I1vwBlnZDUuKQzqGhLJZy++CA8+CF26+LUDJfqTlo7T/xqRfLV+vS8mB362kDail05SIhDJV5Mm+X0G9tsPLrkk6GgkjykRiOSwVquDzpnjZweVlMD06dpnQFKiwWKRHNXqQrLaWjj9dKiv9wPFw4cHHarkObUIRHJUSwvJALj5Znj7bV9G4rrrAoxQCoUSgUiOanEh2YIFcO21/oB774VttgkwQikU6hoSyVHNFpIdWAfhU6CmxncNjRoVdIhSIJQIRHLYFgvJrp/qB4l33RVuvTXQuKSwKBGI5LBN5af7LiLcOB4wY4avKSSSJkoEIjmqcdZQTY2jpH4Ad3EK484O+SdF0kiJQCRHRaN+OKC+3qinjAn8kn1G16KK0pJumjUkkqMiESixesABRqKkjOgbmiUk6adEIJKi2NIYVS9XEVu65fLfVlcFJyk8dCN39bqWcmopsXq6dDFtMC8Zoa4hkRTElsaofLiSeCJOqDRE9dhqwv3DyW8v2ZZLL2XcJ3exz67vEj39V0QOK9FOY5IRahGIpCC6JEo8ESfhEsQTcaJLov75aCurgpP19NN+3+HycsK/u4yJPylXEpCMUSIQSUFkQIRQaYhSKyVUGiIyIOKfjySxvWRrPv4YTj3V3586FYYNS3PUIltS15AAm81Xj2ij844I9w9TPbaa6JIokQERwv39L6/d7SVbU18Pp5wCq1fD4YfDBRdkKHKRJuacCzqGdg0fPtzNmTMn6DAKVlr6swtUbGms2Uk+o266CS67DHr18oXlevfO/GdKwTKzuc65dsvTqkUgLfZnKxG0PhDc4rHpaFHNmQNXXunvP/CAkoBkjRKBbOrPbmwRaIqi19JAcEuJIBbzv7PaWr8/TKcS6eefw0knQV0dnHsuHH10On4EkaRosFg29WdPmaJuoc21NhC89fqAhx/2SdQ5f/vwwx38IOfgjDNg0SLYZx/42c/S+nOItEctAgG2qnIpQMsDwS2Np6Tsjjvg8cehe3eYORO6dk3Dm4okT4lApA3h/uEtuoNaGk8ZO9Z36Tcmh7FjO/ABsZjfbhJ8VdGBA9MZvkhSlAhEOqCl8ZRwGF56qRODxStXwvHH+3GBCy6A738/U2GLtEmJQKQDWlsf0OGutbo6Pzi8bBkcfLDGBSRQSgRplsw0wlSnGmrxV7DSMp5y6aXw4ot+vcBjj/npRknI+roGKQpKBGm0aSORXjFKXohy16URxh0VbvGYzi7e0uKvAjBjBtx2mz/5P/kk9OuX1Ms6sq5BpCM0fTSNolGfBOpPrqTu69cw4Y3KZqWJUy1GlnIxswKXaunnjJs9G8aP9/fvvhsOOSTpl7ZW4E4kVVlPBGbW38xeMrOFZvaOmZ2f7RgyJRKBkv+NQmkcShIkaP7HmlIxsjS8vpA1tpauucbfBpkMWtyj4MMPYfRov/LsvPPg9NM79J6trWsQSVUQXUN1wMXOub+bWXdgrpm94JxbEEAsaRUOw12XRpjwRogEcbqUNf9j7XQxsjS9vpDlSqmMFrtwthsMxxwDK1bAqFFwyy0dft/WCtyJpCrricA5txxY3nD/czNbCPQF8j4RAIw7Ksw+e7f9x5rqYKMWf7UsV0plNOvC+feLhK+7CubNgz339IPDZWWdGvTfel2DSDoEOlhsZgOA/YHXW/jeOGAcwK677prdwFKkP9Zg5EprqbELp7FFEHnob36hQe/e8NxzsOOOaR301ywySVVgicDMtgVmARc459Zt/X3n3DRgGvgy1FkOL++kcjLI5Ikk2yepXGgtbdGF88x8wg/+xpePeO45GDAASF83lmaRSToEkgjMrByfBH7tnHsyiBgKSSong01TXmv8APSdd8K4ccHHlWs6mtDC/cOEH5sNP/sNlJXBrFkwdOim76erGytXxkUkv2U9EZiZAfcDC51zt2b78wtRKieDaNQngfp6/3XOOb4AZjpOJoVykupUQvvFL/yiMfCFiA47bItvp6sbK1fGRSS/BdEiGAmcDMwzs7canrvSOffHAGIpCKmcDCIR3xKor/eP6+vTd8LOhZNUOlZxT57clCyTSmj33gvnn990/0c/avGwdHRj5cq4iOQ551zOfx1wwAFO2vbqq8799Kf+tqPuvde5sjLnSkqc69atc++RibjS8dndujlXWtq5n6vx9SUlzkGSv58HHvAHg3N33JFK+CIpA+a4JM6xKjGRI1KtIZPK1eW4cb47KBNXla3FlY1B5FS7phpfX18PJSV++v/kyW28x333wVln+fs33wwTJqQUv0i2KBFkQXsn+VyoIZPN2TbZGkROtWuq8fU1NT4RHHdcG3H+7Gdw+eX+flVV0x4DInlAtYYyrPEkf81L11D5cPPaQ1B8NWSyVS8p1S04w2FfG65xDOWCC1ooW+EcXHGFTwJmcNdd/rFIHlGLIMOS2QC92QKkAq8hk8qVeoencabY0lm9umlGVbPupdpaOPtsmD7dTxF96CG/x4BInlEiyLBkTvLFVkOmszNdgliX0GrSWrMGxoyBv/zF7zE8cyYcfXRmgxHJECWCdPnjH2GvvWC33bZ4OtmTfLGVpejMlfqmLqU+Mb7cPcrDf4kQznAmaDFpLVwIxx4L//43/M//wO9+p3mbktfMzzDKbcOHD3dz5swJOozWzZrlrw4HD4ZXX4Xttgs6oqTlU52aWAwiJ8eIn1AJpb6660s/zvLA+rPP+u6fdetg//3hqaegf//sfb5IB5jZXOfc8PaO02BxOowaBYMGwTvvwA9/6EdBA9KRjVlyqX5/MsJhOO3aKFbu93uoc00D6xnfkKamBi66yJeSXrfOTyF6+WUlASkISgTpsP328PTTsOOO8MwzcOWVgYTR0RN7OmbvpPMEnMx7jf1GhK5lW27OkvGE9u67Pgv9/Od+ULiqCh5/HCoq0vxBIsHQGEG6fPWrfsDw8MP9nPJeveCSS7IaQkcXUKU6zz7dpZSTea+WxlyqHslQTaNEAu65By67DDZs8OM/jz4KX/taGt7cy6euOSlcSgTp9M1vwrRpcNppvuDYhg3+MtUsKx/f0RN7qnVq0llUrrXWSUuxbT2wnpGaRv/4h18l/Oab/vGJJ/qkkMbxn0Kqzir5TYkg3U491a9AOvVUmDTJTzO86SYoL2/1JamWl2jUmRN7KvPs03ECbrwi7tlzy/fq2TP5k2RaC6+tXQvXXedXktXXwy67+Eqio0enPaEXSnVWyX9KBJkwdix06+Znl9x+O7z+Ovz2t/CVrzQ7NN3lJbJZKiLVE/DWV8S33eYXcEUiHT9Jpvxz19TAL38J11/vk3dJid9gfsqUjM0Cy4XqrCKgRJA5Y8b4q8kTToDXXvObktxwg6/wVtb0a09m5XGQ2uvDTuUEvPXJfvVqmDix6ftZOUl+8YUvFnfLLfDRR/65r38dbr0Vhrc76y4lKiEtOSOZEqVBf+V1GepVq5w79tim0sSDBzv35JPO1dY655x79cNXXbfru7nSa0tdt+u7uVc/DKBecytSLeOc6vtntIT1woXOXXyxczvu2PRvs88+zj3zjHP19Rn4QJHsI8ky1FpQliZtXjk7B08+6WefLF7sn+vXD848E0aPJrbdOqL/+Wtmy0vE477LY80a+OwzP5D95Zf+q6bG34JvrZSWElv8P0x+ch9enNebemeUljqmnL+aiZcloEcPCIXSMuMlq7NmVq+GP/wBZsyAV15pej4c9k2Ro4/2XUIiBSLZBWVKBGmQ9OyPmhq/Y9Wdd8KiRU3P9+sHhx4K++3nNwbo1w/69PEn3K1PTHV1sH6979JYvRpWrvRfq1ZteX/VqqYT/5o1/jXJ/jyMoJJqaghRTyklJOhCnGoqCfOaP6b74VR+8XviLkSotI7q791FeP8vfXfY5l89emRt1lQziQQsWAB/+pNf5zF7dtNWbNtu62cCnXEGHHhgcDGKZFCyiUBjBGmQ9MBmly5+AHLCBF+s7JFH/Elq2TL49a/919bMfHYpL/eJpLa23Xhi/SA6ACKrIbys4cmyMr/gbccd/cm5osIXS+vSpekWIJEg+tZRxP/ZpSEJ1DFqh7lM7vVLwokVsG4nWLOG6OfDiFNOglLiiXqiM1cSnjm15Z956+TQ0lf37qmdjD//HN5/3yfYefN8dn7jDf98o/Jyn7GPP96P3Wy7bec/rx1aHyD5RIkgDdqb/dHspNC43dWoUf4K9Z//9PPV337bX8F+/DEsX+5LGTjnE0BNjX+zkhJ/Eq+o8HMse/XyXzvtBL16MW1jiAndppAoqaVLSTnVR/6G8J6H+ZNekifaSAxCm1o4ZUz+49cIhzdbRFVfT+RPawkdV0I8Xk+ozIj831DocpmP++OPm77WroUPPvBfbamo8K2gXXaBHXbws6622abpFnwSbPz67DPf6lm9Gj79FFasaPl9v/IVP/j7ne/AEUdkpQ6U1gdIvlEiSIO2Zn+0e1IoKfHFy/bfv/kbO+ebGY0nv1DIX2G3ckKPxeCcq6qo+3odUE9NfR3RL98l3H102n6expjD3+5B9V8ajykhHP4B8IPmb7Z+ffPksPXXRx/5495/3391RpcufnX3V78Ke+7pV/+OGOGTS5ZpfYDkGyWCNGltGmVKJwUz36VTVuavjNsRjUL9vyNwcAhcnNIUNrlJZlpoUlNHKyqaTtCtcc534TQmhnXrYONGP6DdeAu+a6e83P8+evTwLaKGlhB9+uTMQK/WB0i+USLIsGyeFCIR6DIlTM2vqin53yh3Xponm9yY+S6b7bbzV/N5TusDJN9o1lAWZHPgUIOUItJI00dFRIqcNqYREZGkKBGIiBQ5JYIsy/iWiiIiHaRZQ1mkhUYikovUIsiizdcUfPklPPxw0BGJiCgRZFUk4jcvA7+G6oEH1EUkIsFTIsiicNhvZ9xYIaKurmlvXglOquM2GveRfKcxgiwbOxYeeqi4yw/k0qK3VMdtNO4jhUCJIMuKvfxArp04Uy0QpwJzUgiUCAKQzQ3mc02unThTrQWlAnNSCJQIpF2xpTGiS6Jp2Uoz106cqbbQir2FJ4UhkFpDZnYkcDtQCkx3zrWwtVUT1RoKTmxpjMqHK4kn4oRKQ1SPrU45GeTSGIFIIcvZrSrNrBS4CzgMWAa8aWZ/cM4tyHYs0r7okijxRJyESxBPxIkuiaacCILsGlMSEmkuiK6hg4D3nXOLAczst8D/A5QIclBkQIRQaWhTi6AjG93k2kk31waqRXJFEImgL7B0s8fLgK9tfZCZjQPGNTysMbP5WYgtVTsBqzL7Ed0rYLvusO5z+Hx9J9+kY3GGqKAL3TfWbPz84KsPTvIzu1fAHgPBSsDVw6L3OhFvmn+ffXtD774AGzc6d/DBn34MH32S4ptm4d88LRRneuVLnIOSOSiIRNDShrvNBiqcc9OAaQBmNieZfq6gKc70yoc48yFGUJzplk9xJnNcECuLlwH9N3vcD/g4gDhERIRgEsGbwB5mtpuZhYATgD8EEIeIiBBA15Bzrs7MJgB/xk8fneGce6edl03LfGRpoTjTKx/izIcYQXGmW0HFmRd7FouISOao+qiISJFTIhARKXJ5lwjM7BIzc2a2U9CxtMTMppjZ22b2lpk9b2a7BB3T1szsJjP7V0OcvzOzHYKOqSVmNsbM3jGzejPLual6Znakmb1rZu+b2RVBx9MSM5thZityfR2OmfU3s5fMbGHDv/n5Qce0NTPramZvmNk/G2K8NuiY2mJmpWb2DzN7pr1j8yoRmFl/fGmKD4OOpQ03Oef2dc4NBZ4BfhJwPC15AdjbObcv8B4wMeB4WjMfGA38LehAtrZZqZSjgMHAiWY2ONioWvQgcGTQQSShDrjYObcXMAI4Jwd/nzXAt5xz+wFDgSPNbESwIbXpfGBhMgfmVSIAfg5cRgsL0HKFc27dZg8ryMFYnXPPO+fqGh6+hl/LkXOccwudc+8GHUcrNpVKcc7FgcZSKTnFOfc3YE3QcbTHObfcOff3hvuf409gfYONakvO+6LhYXnDV879fQOYWT/gaGB6MsfnTSIws+8AHznn/hl0LO0xsxvMbCnwQ3KzRbC504Dngg4iD7VUKiWnTlz5yswGAPsDrwccSjMN3S1vASuAF5xzORdjg9vwF831yRycU/sRmNmLQO8WvnUVcCVweHYjallbcTrnnnLOXQVcZWYTgQnApKwGSPsxNhxzFb5J/utsxra5ZOLMUUmVSpGOMbNtgVnABVu1rnOCcy4BDG0YV/udme3tnMup8RczOwZY4Zyba2aRZF6TU4nAOTeqpefNbB9gN+Cf5nd+7wf83cwOcs6lWjSsw1qLswW/AZ4lgETQXoxmdgpwDFDpAlxM0oHfZa5RqZQ0M7NyfBL4tXPuyaDjaYtz7r9mFsWPv+RUIgBGAt8xs28DXYHtzOwR59yPWntBXnQNOefmOed2ds4NcM4NwP8RDgsiCbTHzPbY7OF3gH8FFUtrGjYGuhz4jnNuQ9Dx5CmVSkkj81d49wMLnXO3Bh1PS8ysV+MMOzPrBowiB/++nXMTnXP9Gs6VJwB/aSsJQJ4kgjwz1czmm9nb+K6snJsGB9wJdAdeaJjmek/QAbXEzL5nZsuAMPCsmf056JgaNQy2N5ZKWQg8nkSplKwzs0eBGDDIzJaZ2elBx9SKkcDJwLca/k++1XBFm0v6AC81/G2/iR8jaHdqZj5QiQkRkSKnFoGISJFTIhARKXJKBCIiRU6JQESkyCkRiIgUOSUCkQ5qqJT5gZnt2PC4R8PjrwQdm0hnKBGIdJBzbilwNzC14ampwDTn3H+Ci0qk87SOQKQTGsohzAVmAGcC+zdUIRXJOzlVa0gkXzjnas3sUuBPwOFKApLP1DUk0nlHAcuBvYMORCQVSgQinWBmQ/G75Y0ALjSzPsFGJNJ5SgQiHdRQKfNufM38D4GbgJuDjUqk85QIRDruTOBD59wLDY9/CexpZocGGJNIp2nWkIhIkVOLQESkyCkRiIgUOSUCEZEip0QgIlLklAhERIqcEoGISJFTIhARKXL/H54o35zaQXsJAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "poly_regression(6)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
